​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