大恆智星 Pallas_Qt_mingw32_SDK 開發環境搭建

準備

  • Pallas_Qt_mingw32_SDK
  • gcc-linaro-6.2.1-2016.11-i686-mingw32_aarch64-linux-gnu
  • 大恆PALLAS系列相機

以上,最好找大恆的技術支持拿。

環境搭建

特別注意

大恆提供的是文件爲:

  • Pallas_Qt_mingw32_SDK.tar.xz
  • gcc-linaro-6.2.1-2016.11-i686-mingw32_aarch64-linux-gnu.tar.xz

我們需要在Windows下,以管理員身份運行7z解壓,否則文件結構可能會被破壞。

在這裏插入圖片描述
在這裏插入圖片描述

QT+交叉編譯環境

若 PC 上已經安裝了 Qt ,則不需要另外安裝,直接 新建構造套件 即可。

環境變量

但在此之前,我們需要先配置以下環境變量:

  • qmake
  • make
  • 交叉編譯工具鏈

在系統環境變量 PATH 中添加:

  • C:\arm123\bin;
  • C:\Pallas_Qt_mingw32_SDK\make\bin;
  • C:\Pallas_Qt_mingw32_SDK\qmake\bin;

驗證
在這裏插入圖片描述

構建套件

Qt版本
在這裏插入圖片描述
交叉編譯工具鏈
在這裏插入圖片描述
GDB
在這裏插入圖片描述
Cmake
在這裏插入圖片描述
添加設備:需先接入相機,配好網絡,可以點擊 Test 測試
在這裏插入圖片描述
添加構建套件
在這裏插入圖片描述

測試Qt交叉編譯

新建工程,選用我們新建的構造套件 PASSLA ARM64,添加測試代碼:

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    qDebug() << "test success.";
    return a.exec();
}

出現錯誤:
error: Unexpected output from remote process: "Available"

到編譯輸出看一下:

在這裏插入圖片描述
可以發現是部署失敗,我們先不管它,可執行文件已經生成。

在這裏插入圖片描述
通過 ftp上傳到板子上,再授予權限:

chmod 777 untitled

執行一下:
在這裏插入圖片描述
成功輸出了,但是前面出現 failed

這是因爲我用的是 Qt Widgets Application,若使用 Qt Console Application 則不會出現該問題。

在這裏插入圖片描述

Qt 遠程調試

遠程調試,則開發板上需要 gdbserver,大恆已經提供並幫我們配置好了。
例如我們需要調試 untitled 程序。按上文生成可執行文件後,先上傳到相機(開發板)。

然後啓動 gdbserver

gabserver 192.168.10.10:6666 ./untitled

在這裏插入圖片描述
QtCreator 中選擇 調試 -> 開始調試 -> Attach to Running Debug Server...

在這裏插入圖片描述
然後就可以調試了

在這裏插入圖片描述

OPenCV配置

環境變量及路徑

SDKDetectBlob 爲例,大恆給我們提供了 Makefile

根據 MakeFile 內容,我們需要做兩件事:

  • Pallas_Qt_mingw32_SDKC盤根目錄 下,這下明白爲什麼大恆建議解壓到C盤根目錄了…
  • 增加環境變量 PALLAS_SDK_PATHOPENCV_PATH

在這裏插入圖片描述
在這裏插入圖片描述
原諒我當時想不開裝的 Win7 …配置環境變量實在太不友好。
在這裏插入圖片描述

MakeFile

make 一下:

在這裏插入圖片描述
OPenCV頭文件找不到。打開 MakeFile 文件,發現其並沒有指定 OpenCV相關頭文件位置

在這裏插入圖片描述
解決

上圖 18 行 INCPATH 結尾加上 -I../../../opencv3.2/include 即可。

重新 make

在這裏插入圖片描述
再到板子上測試,成功~

在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章