Arm機移植演算法與程式
- 2019 年 10 月 6 日
- 筆記
Arm機移植演算法與程式
0.導語
應項目需求,測試多路攝影機,需要測試程式移植到Arm機上,比如寫的人臉識別演算法,影片多拍等,那如何進行移植,如何操作呢,本篇文章進行詳細闡述。
1.環境準備
本次移植為c/c++程式通過arm-linux-gnueabihf 在Ubuntu18上編譯,連接usb線,接到Arm機板子上。
下面進行相應實驗。
2.交叉編譯器
交叉編譯器安裝如下:
sudo apt install g++-arm-linux-gnueabihf
指定版本:
sudo apt install g++-8-arm-linux-gnueabihf
2.2 編譯程式
這裡就不寫什麼C/C++程式了,直接編譯程式,假設程式名字為main.cpp,編譯命令如下:
arm-linux-gnueabihf-g++-8 -static -o main1 main.cpp
一定要加上 -static 靜態鏈接的選項,不然編譯出來的a.out執行不了
2.3 上傳
將Android設備需要連上電腦,然後通過下面的步驟重新掛載Android為可讀寫的
adb root # 該命令需要手機已經root adb remount adb shell "mount -o rw,remount /system" # rw 表示掛載為可讀寫read/write
使用adb將main上傳到arm上:
adb push main1 /data/
然後運行
adb sehll
進入Linux後,進入data目錄下,並運行剛才的程式:
cd data chmod 777 main1 ./main1
這樣移植程式,就成功了。
2.4 下載
比如我想將採集的圖片導入本機,那下載就行了,輸入下面命令:、
adb pull /data/yuv