我在我的一个VoIP功能项目中使用idoubs开源。 armv6和armv7架构的工作正常。现在我正在更新我的项目以支持iphone 5.我无法在armv7s架构中编译项目(我放弃了armv6架构。在armv7和armv7s架构中编译)。我收到了以下错误。
ld:找不到-lsrtp的库
collect2:ld返回1退出状态
请分享您的建议以解决此问题。
注意:
libsrtp.a适用于除armv7s架构之外的所有架构(armv6,armv7和i386)。所以我不确定idoubs源代码是否真的已经更新
我使用的是最新版本的r221和xcode 4.5。
提前致谢...
答案 0 :(得分:4)
对我来说也是如此,我终于解决了它。
当我为GPL
版本编译Building时,它运行正常,但是当我构建非GPL版本时,却出现了17个错误。首先,我按照以下步骤操作:
In /mydoubs/iPhone/idoubs/branches/2.0/ios-idoubs/idoubs.xcodeproj
Right click on idoubs target => Get Info => Build tab => Other Linker Flags then:
remove -lx264
replace
-lswscale to -lswscale-lgpl
-lavcore to -lavcore-lgpl
-lavutil to -lavutil-lgpl
-lavcodec to -lavcodec-lgpl
Right click on ios-ngn-stack target => Get Info => Build tab => Other C Flags then:
replace -DHAVE_H264=1 with -DHAVE_H264=0
然后按照以下顺序构建库的技巧,在同一个项目中不要忘记(idoubs.xcodeproj
):
armv7以这种方式工作
答案 1 :(得分:0)
在"构建设置"在选项中:"有效架构"只留下armv7和用户定义的(它在页脚"构建设置")包含在" Doubango liBS" armv7s并从目录中选择libs" ..你是私人路径../ mydoubs / doubango / branches / 2.0 / doubango / thirdparties / iphone / lib&#34 ;! 它对我有帮助!