RK3506擁有著不錯的性價比以及與之相匹配的性能優勢,非常適合用來做邊緣計算網關、小型數據收集端點等。今天給大家帶來兩款內網穿透工具的交叉編譯移植,方便在RK3506上搭建相關應用。

在編譯兩個工具之前,我們需要搭建交叉編譯環境,需要將我司提供的交叉編譯器拷貝至ubuntu中并解壓,完成后如下圖所示:

交叉編譯器是從buildroot上直接導出,工具的具體路徑需要重新鏈接,所以執行目錄中的relocate-sdk.sh腳本,重新鏈接到我們自己的路徑中,鏈接完成后需要聲明交叉編譯器,直接執行source environment-setup,正常如下圖所示:

?
接下來我們先編譯frp。frp是go語言編寫的工具,我們還需要搭建go語言編譯環境。下載go二進制x86文件All releases - The Go Programming Language,下載完成后將安裝包解壓到一個位置,文章中是/opt目錄,因為go語言的安裝目錄不可以跟數據目錄在一起,所以我們將兩者分開,這里寫了一個聲明環境的腳本go_env.sh,內容如下圖所示:
?
source go_env.sh,拉取frp代碼git cloenhttps://github.com/fatedier/frp.git,重點關注

如果我們想要編譯arm架構的二進制文件,需要將Makefile.cross-compiles重命名為Makefile,因為默認Makefile是為x86準備的,重命名后,直接make編譯即可,編譯完成后會在當前目錄的release目錄中,生成所有架構的二進制文件,其中就包括arm架構,具體如下圖所示:

最后是編譯wireguard-tools。Wireguard在低版本內核中,會向內核里打相應的補丁,不過因為RK3506的內核版本較高,主線分支上已經將相關補丁合并,所以我們只需要編譯工具即可。首先,我們按照文章一開始的步驟聲明交叉編譯器環境變量,然后使用git clonehttps://git.zx2c4.com/wireguard-tools下載源碼,接著使用make -C wireguard-tools/src命令編譯,編譯成功后會在源碼src目錄生成二進制文件wg,如下圖所示:
?
以上,就是RK3506交叉編譯frp和wireguard的全部過程了,其它的第三方軟件也可以用這樣的方法編譯,主要還是要根據工具的makefile以及configure等文件摸索出正確的交叉編譯方法。
-
邊緣計算
+關注
關注
22文章
3527瀏覽量
53430 -
RK3506
+關注
關注
0文章
94瀏覽量
928
發布評論請先 登錄
米爾瑞芯微多核異構低功耗RK3506核心板重磅發布
【米爾RK3506國產開發板評測試用】開箱體體驗
RK3506各型號間有什么差異?
低成本解決方案,RK3506的應用場景分析!
瑞芯微RK3506 vs NXP i.MX6ULL
RK3506開發板Linux開發板極致性價比之選
RK3506開發板QT Creator開發手冊,交叉編譯工具鏈與QT應用示例,入門必備
2025瑞芯微開發者大會萬象奧科展出RK3506郵票孔核心板
RK3506 MIPI轉HDMI顯示開發實戰:從硬件到驅動全解析
技術分享 | RK3506如何交叉編譯frp wireguard
評論