預編譯好的WebRTC庫 翻譯文

2021-09-19 01:25:46 字數 1546 閱讀 9194

本文翻譯自
在許多請求之後,我們開始提供webrtc構建來幫助libsourcey開發人員。構建中包含了windows和linux上本地webrtc開發所需的所有庫和標頭檔案,儘管構建是為libsourcey開發人員設計的,但它們是完全可移植的,可以被所有人使用。

webrtc儲存庫是乙個超過10gb的龐然大物,有無數依賴項,沒有從谷歌獲得豐厚報酬的開發人員不應該去處理這些依賴項。然而,一旦多餘的檔案儲存空間減少,歸檔構建的大小就可能降低到50mb左右,包括所有靜態庫和標頭檔案。jenny craig感到很自豪的!

在windows上,您需要7-zip來提取歸檔檔案,而在linux上,歸檔檔案是.tar.gz格式的。為了方便起見,所有靜態webrtc庫都已合併到單個庫中(windows上的lib webrtc_full.lib和linux上的lib webrtc_full.a),因此您只需將這乙個庫與專案鏈結,即可包含所有webrtc元件。

資料夾結構已經設定,因此您可以將同一版本的x64和x86存檔檔案提取到單個根目錄中:

webrtc-build/

├── third_party/ <-- webrtc依賴內容

├── webrtc/ <-- webrtc核心內容

└── lib/

├── x64/

│ ├── debug <-- x64除錯庫

│ ├── release <-- x64版本庫

├── x86/

│ ├── debug <-- x86除錯庫

│ ├── release <-- x86版本庫

windows庫是用visual studio 2015 update 3編譯的,而linux構建是在ubuntu 16.10上用gcc編譯的。

除錯構建是在啟用所有除錯符號的情況下建立的,並且版本構建已經進行了優化,以獲得最大的效能。gn的具體構建選項如下:

gn gen out/x86/debug --args=

"is_debug=true rtc_include_tests=false target_cpu=\"x86\""

gn gen out/x86/release --args=

"is_debug=false rtc_include_tests=false target_cpu=\"x86\" symbol_level=0 enable_nacl=false"

gn gen out/x64/debug --args=

"is_debug=true rtc_include_tests=false target_cpu=\"x64\""

gn gen out/x64/release --args=

"is_debug=false rtc_include_tests=false target_cpu=\"x64\" symbol_level=0 enable_nacl=false"

mysql 預編譯的好處 MySQL的預編譯功能

1 預編譯的好處 大家平時都使用過jdbc中的preparedstatement介面,它有預編譯功能。什麼是預編譯功能呢?它有什麼好處呢?當客戶傳送一條sql語句給伺服器後,伺服器總是需要校驗sql語句的語法格式是否正確,然後把sql語句編譯成可執行的函式,最後才是執行sql語句。其中校驗語法,和編...

Android NDK 引入預編譯庫的方法

1.無關緊要的話 2.解決辦法 編寫android.mk檔案,讓ndk在build的時候去找第三方庫,把它拷到libs armeabi目錄下。網上找了一通,發現好些博文都說在jni目錄下新建prebuilt目錄,再把第三方庫拷進prebuilt目錄下,並且在prebuilt目錄下新建並編寫andro...

預編譯的過程

圖一 圖二 預處理 在預處理階段進行的工作是純粹的替換和展開,沒有任何的計算功能和檢查功能,這也正是巨集定義出現在預處理階段的原因。下面我主要說一下巨集定義的優點和缺點 優點 1.速度方面 當巨集定義的是乙個函式時,預處理用複製巨集的 方式代表函式呼叫,省去了引數壓棧 生成組合語言的call 呼叫 ...