xcode7編譯webrtc遇到的問題解決辦法

在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',
              ],
            },
          }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容