2016-01-20 52 views
0

我正在尝试将WebRTC集成到一个OSX桌面应用程序中,当我尝试链接webRTC库时遇到一些错误。问题是:osx - WebRTC链接问题

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) 

这告诉我,我还没有在我的libjingle_media.a定义这个符号,至极它根据是正确的:

$ nm libjingle_media.a | grep _AVMediaTypeMuxed 
warning: /Applications/Xcode64.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm: no name list 
      U _AVMediaTypeMuxed 

我已经使用这个标志内置的WebRTC:

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" 

当然还有忍者,之前运行gclient runhooks。任何想法关于这是怎么回事?

回答

0

为了解决这个问题,你需要使用一个特定的框架来实现这个功能,在这种情况下,一个框架叫做AVFoundation