I'm trying to integrate WebRTC in one OSX Desktop application and I'm getting some errors when I try to link with webRTC library. The issue is:
Undefined symbols for architecture x86_64:
"_AVMediaTypeMuxed", referenced from:
cricket::GetAVFoundationVideoDevices(std::vector<cricket::Device, std::allocator<cricket::Device> >*) in libWebRTC-arm64-debug.a(libjingle_media.macdevicemanagermm.o)
This tell me that I have not defined this symbol in my libjingle_media.a
, wich is true according with it:
$ nm libjingle_media.a | grep _AVMediaTypeMuxed
warning: /Applications/Xcode64.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: no name list
U _AVMediaTypeMuxed
I have built WebRTC using this flags:
GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_objc=1 OS=mac target_arch=x64"
GYP_GENERATORS="ninja"
GYP_GENERATOR_FLAGS="$GYP_GENERATOR_FLAGS output_dir=out_mac"
and of course with ninja, running previously gclient runhooks
. Any idea about what is happening with this?
To solve this issue, you need to use a particular framework that implements the function, in this case a framework called AVFoundation