webrtc 编译采坑记录

it2026-06-20  6

有用链接:https://blog.csdn.net/qq_34732729/article/details/105707104 D:depot_tool  D:\depot_tools\win_tools-2_7_6_bin\python\bin   设置环境变量,设置python 版本为2.7 且为32位的; pcm.c文件 最后一行编译错误注掉; gen gn --中设置命令 treat_warnings_as_errors=false

//Debug的必须要加,不然替换lib库之后会报Debug不匹配release情况 生成out后 out 目录下args.gn 中添加enable_iterator_debugging=true  

今日遇到外部项目调用webrtc.lib 库找不到wincore 音频默认创建模块的符号,在webrtc.gn 文件中加入audio_device:audio_device_module_from_input_and_output 依赖之后,调用adm模块,adm再调用rtc::win::OS::GetVersion()的时候显示异常,应该是库之间的依赖关系不对,出现反向依赖所导致,一顿操作后发现还是没解决,最后直接注掉那行代码解决问题。

 

几个模块之间的依赖关系:

audio_device_module_from_input_and_output 依赖 rtc_base:rtc_base_approved 

rtc_base:rtc_base_approved 实现(Win)win/windows_version.h ,即获取win OS操作系统的版本

audio_device_api ,audio_device_buffer  依赖 rtc_base:rtc_base_approved。

按理说 他们对rtc_base:rtc_base_approved 都不是 public_deps 依赖,为什么webrtc.gn 引用audio_device_module_from_input_and_output依赖时,会导致 win/windows_version.cc的报错???????

最新回复(0)