前言
win10開發(fā)測(cè)試已經(jīng)一段時(shí)間了,最近將程序移植到ubuntu測(cè)試了下,改動(dòng)不是很大,本教程記錄下環(huán)境搭建過程
一、準(zhǔn)備
1.操作系統(tǒng)ubuntu22.04?64位 x86架構(gòu)(建議更新到最新)
2.合理的上網(wǎng)方式,需要正常訪問google,最好有40G以上流量
3.安裝git,并設(shè)置代理
#全局代理
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
//查看當(dāng)前設(shè)置
//git config -l
//取消全局代理
//git config --global --unset http.proxy
//git config --global --unset https.proxy
4.安裝depot_tools
depot_tools是包含下載、編譯的相關(guān)工具,需要先下載并配置它,才能繼續(xù)后面的操作。
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
或者直接下載https://storage.googleapis.com/chrome-infra/depot_tools.zip
下載完后解壓,并將解壓好的depot_tools目錄添加到path系統(tǒng)環(huán)境變量中
二、獲取源碼
1.打開shell,切換到一個(gè)空目錄中(目前不要有空格或中文)
2.在shell中設(shè)置臨時(shí)環(huán)境變量,以下是筆者設(shè)置的,可參考下
export PATH={dir}/webrtc/depot_tools:$PATH
3.獲取WebRTC源碼
mkdir webrtc #這是創(chuàng)建一個(gè)目錄,當(dāng)然也可以用鼠標(biāo)創(chuàng)建。
cd webrtc #進(jìn)入到我們剛剛創(chuàng)建的目錄中
gclient config --name src https://webrtc.googlesource.com/src
fetch --nohooks webrtc #獲取代碼,這一步會(huì)花點(diǎn)時(shí)間,一般會(huì)失敗,我試了幾次都失敗了
gclient sync # 當(dāng)過程中斷時(shí)(包括上一步的失?。覀兛梢允褂迷撁罨謴?fù)并繼續(xù)
可能需要執(zhí)行g(shù)client sync ,直到出現(xiàn)如下提示,才代表同步成功
?
筆者下載了40多G數(shù)據(jù)
4.安裝依賴
下載完成后,執(zhí)行如下命令,就可以在線安裝好所有依賴
./src/build/install-build-deps.sh
注 :這是源碼里的一個(gè)腳本,不幸的是,它只有在第一次gclient同步之后才可用
5.編譯
cd src
gn gen out/Default --ide="qtcreator"
ninja -C out/Default
gn gen out/Release --ide="qtcreator" --args="is_debug=false"
ninja -C out/Release
如提示缺少文件則回到上一步繼續(xù)執(zhí)行?gclient sync 同步文件
若一切順利,會(huì)出現(xiàn)類似如下圖所示
WebRTC編譯后會(huì)在src/out/Default/obj和src/out/Release/obj目錄下生成整個(gè)WebRTC工程的靜態(tài)庫(kù):libwebrtc.a,鏈接下這個(gè)就可以了。
整個(gè)目錄太大,不方便上傳,
后記:
很多小伙伴,想需要查看下,有哪些參數(shù)可以設(shè)置,可以使用如下命令查看
gn args out/Default --list
此命令需要提前執(zhí)行下?gn gen out/Default才能使用
可以根據(jù)實(shí)際需要調(diào)整編譯參數(shù)
若只想查看特定設(shè)置參數(shù),可以使用類似如下命令文章來源:http://www.zghlxwxcb.cn/news/detail-488400.html
gn args out/Default --list=rtc_enable_grpc
筆者是2023.06.13,拉取的最新代碼,總體編譯過程是比較簡(jiǎn)單的,不過部分系統(tǒng)有些參數(shù)需要設(shè)置下,否則可能編譯不過文章來源地址http://www.zghlxwxcb.cn/news/detail-488400.html
到了這里,關(guān)于Qt6.5.1+WebRTC學(xué)習(xí)筆記(十一)開發(fā)環(huán)境搭建(ubuntu22.04)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!