首先說(shuō)下, 我繞很大的彎路是麒麟的版本沒(méi)選好, 開(kāi)始選的是2021年的, 參考博客寫的是基于2020年的, 遇到了很多坑, 坑死我了, 多么痛的領(lǐng)悟 準(zhǔn)備 Qt版本: Qt5.9.8 下載地址: https://download./archive/qt/5.9/5.9.8/single/ (官網(wǎng)) https://mirrors.tuna./qt/archive/qt/5.9/5.9.8/single/ (清華大學(xué)鏡像站) 下載 qt-everywhere-opensource-src-5.9.8.tar.xz 銀河麒麟版本: Kylin-Desktop-V10-Release-Build1-20200710- arm64.iso 這個(gè)版本默認(rèn)安裝了Qt Creatr4.3.1 Qt4.8.7 Qt5.6.1
編譯安裝 1. 這個(gè)版本不需要裝亂七八糟的依賴庫(kù) 對(duì)源碼解壓, 得到源碼文件夾, 進(jìn)入文件夾 xz -d qt-everywhere-opensource-src-5.9.8.tar.xz tar -xvf qt-everywhere-opensource-src-5.9.8.tar 解壓后可以看下README官方的安裝說(shuō)明 2. 修改arm交叉編譯器 vim qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf 將arm-linux-gnueabihf替換為aarch64-linux-gnu: :.,$s/arm-linux-gnueabi/aarch64-linux-gnu/g 3. 生成配置文件 ./configure -prefix /usr/local/Qt-5.9 -release -xplatform linux-arm-gnueabi-g++ -opensource -nomake examples -nomake tests -confirm-license -shared -no-iconv -qt-xcb 對(duì)參數(shù)說(shuō)明: -prefix: 指定安裝路徑。比如./configure -prefix /usr/local/Qt-5.9。這樣一 來(lái),在執(zhí)行make install指令時(shí),編譯完成的bin、lib或者其他子目錄就 會(huì)拷貝到/usr/local/Qt-5.9/目錄中。 -xplatform: 指定了目標(biāo)平臺(tái)和編譯時(shí)使用的編譯器,Qt支持的平臺(tái)和編 譯器都在qtbase/mkspecs目錄中。比如,在Ubuntu Linux系統(tǒng)中,Qt能 被多種編譯器編譯,比如clang和g++。如下所示,指定 qtbase/mkspecs/linux-arm-gnueabi-g++平臺(tái)進(jìn)行編譯,也和剛剛修改 的文件相對(duì)應(yīng)。 -release: 在關(guān)閉調(diào)試的情況下編譯和鏈接Qt。 -opensource: Qt的開(kāi)源版本的編譯和鏈接。 -nomake <part> 從要構(gòu)建的部件列表中排除部分 -nomake tests: 禁用測(cè)試構(gòu)建以加快編譯 -nomake examples: 禁用構(gòu)建示例以加快編 -shared: 創(chuàng)建和使用共享Qt庫(kù)。 -no-iconv: 不支持iconv -qt-xcb: 使用qt的xcb 4. 編譯安裝 make make時(shí)間較長(zhǎng),大概要幾個(gè)小時(shí). 執(zhí)行make 編譯, 最好不要使用多核 優(yōu)化-j選項(xiàng),例如make -j4, 會(huì)出現(xiàn)不可預(yù)期的錯(cuò)誤, 例如總線錯(cuò)誤等, 出現(xiàn)了 錯(cuò)誤接著make就行 make后進(jìn)行安裝 sudo make install 這樣安裝會(huì)裝在之前參數(shù)指定的路徑 /usr/local/Qt-5.9下, 也可以指定安裝, 例如: make install INSTALL_ROOT=/opt/Qt-5.9 安裝后在指定路徑下的bin目錄下有可執(zhí)行文件qmake, 很重要 5. Qt Creatr 選用Qt版本
鳴謝: https://blog.csdn.net/qq_38232598/article/details/103418988 構(gòu)建/部署項(xiàng)目XGS_QtForms 時(shí)發(fā)生錯(cuò)誤 (kit: 桌面) 當(dāng)執(zhí)行步驟 'qmake'時(shí) https://blog.csdn.net/wl362002000/article/details/114082185 qtchooser工具 |
|