在linux上使用qt編譯基於arm64的程序


首先安裝linux版的qt,選擇你想用的qt源碼版本,我這里用的是5.9.9的版本

不想用qt軟件的  這里提供幾個網站

官網 http://download.qt.io/official_releases/qt
https://download.qt.io/archive/qt/

中國科學技術大學:http://mirrors.ustc.edu.cn/qtproject/
清華大學:https://mirrors.tuna.tsinghua.edu.cn/qt/
北京理工大學:http://mirror.bit.edu.cn/qtproject/
中國互聯網絡信息中心:https://mirrors.cnnic.cn/qt/

在網站上下載的源碼需要解壓

然后安裝交叉編譯工具鏈

$ sudo apt-get install gcc-arm-linux-gnueabihf
$ sudo apt-get install g++-arm-linux-gnueabihf
$ sudo apt install gcc-aarch64-linux-gnu
$ sudo apt install g++-aarch64-linux-gnu

查看是否安裝成功

$ arm-linux-gnueabihf-gcc -v
$ arm-linux-gnueabihf-g++ -v
$ aarch64-linux-gnu-gcc -v
$ aarch64-linux-gnu-g++ -v

為了不污染源碼新建一個文件夾 我建在和源碼同級目錄下 我這里的文件夾名是5.9.9-arm64-build

cd 5.9.9-arm64-build

sudo  ../5.9.9/Src/configure -prefix $PWD/qtbase -opensource -xplatform linux-aarch64-gnu-g++ -no-opengl -nomake examples

sudo make

sudo make install

在make時我遇到了一些問題

1.error: ‘SIOCGSTAMP’ undeclared (first use in this function); did you mean ‘SIOCGARP’?

解決:找到socketcanbackend.cpp並打開,添加頭文件#include <linux/sockios.h>即可解決問題

2.python: not found  

sudo ln -s /usr/bin/python3 /usr/bin/python

無法打開qt

1.qtcreator中沒有c++編譯器,需要使用命令:

sudo apt install build-essential    

qt報錯You don t seem to have make or gmake in your PATH Cannot proceed 也可以用上面這個命令

2.qt creator無法啟動,無法加載xcb插件.

sudo apt install libxcb-xinerama0

3.qt creator編譯時報錯:cannot find -IGL.

使用命令:sudo apt install libgl1-mesa-dev

 

執行完sudo apt install build-essential 后qt中就配置好了aarch64的編譯器

設置一下qt versions

新建一個,我的路徑在Qt/5.9.9-arm64-build/qtbase/qmake/qmake

新建一個kits,device 選擇Generic linux Device

c和c++選擇arm 64 bit in usr/bin

qt version 選擇剛剛配置好的qt version

新建一個項目進行測試,在ktis選項中選擇剛剛新建的kits

就可以進行arm64的編譯了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM