在xcode7下編譯最新版本的webrc應該是沒有問題的,
因為谷歌對webrtc進行了針對xcode7,iossdk9的更新。
這種由于xcode升級導致的編譯錯誤,
解決思路就是去參考最新版本webrtc中的修改辦法。
如果是使用webrtc自帶的編譯器容易出現錯誤,
如無法識別objective-c語法新引入的特性nullable關鍵字,那你可以在生成編譯腳本時指定使用系統自帶的clang編譯器:
webrtc/build/gyp_webrtc -Dclang_xcode=1
如果你打算編譯xcode7推出之前的webrtc版本可能遇到以下問題:
no such file or directory: ‘/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libicucore.dylib’
no such file or directory: ‘/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libsqlite3.dylib’
本文在xcode7下編譯webrtc版本m43
編譯AppRTCDemo時報錯無法找到libsqlite3.dylib,libicucore.dylib
分別修改sqlite.gyp中
'link_settings': {
'libraries': [
'$(SDKROOT)/usr/lib/libsqlite3.dylib',
],
},
改為:
'link_settings': {
'xcode_settings': {
'OTHER_LDFLAGS': [
'-lsqlite3',
],
},
},
talk/libjingle_example.gyp中的
'link_settings': {
'xcode_settings': {
'OTHER_LDFLAGS': [
'-framework CFNetwork',
],
},
'libraries': [
'$(SDKROOT)/usr/lib/libicucore.dylib',
],
}
改為:
'link_settings': {
'xcode_settings': {
'OTHER_LDFLAGS': [
'-framework CFNetwork',
'-licucore',
],
},
}