一、概述
????????QT版本:QT5.12.10
????????Qt網址:http://download.qt.io/archive/qt/
????????編譯平臺 ubuntu18.04
二、安裝交叉編譯工具鏈
1、獲取交叉編譯工具鏈?
????????一般如果是編譯系統如果有對應的gcc 就是用這個就可以了 比如rk3128?linux在rk312x-linux-no-sync-hyperlcd\prebuilts\gcc\linux-x86,分為aarch64和arm,如果沒有的話 就是用下面的指令下載gcc并安裝
????????交叉工具鏈:gcc-4.9.3-64-gnu.tar.gz
2、安裝交叉工具鏈
tar zxvf gcc-4.9.3-64-gnu.tar.gz -C /
命令執行后,在系統?/opt?目錄下會有:gcc-4.9.3-64-gnu
三、QT5.12.10 源碼編譯
1、編譯準備
? ? ? ?一般只需要qt-everywhere,獲取下載并解壓出來
如果根目錄里面有.sh 直接修改即可 沒有.sh的話 重建一個run.sh,并輸入如下內容
大致內容如下 關于第一句./configure -extprefix /opt/aarch64_qt5.12?是表示最后結果會存在這個位置
二、配置編譯模塊
如arm64位
./configure -extprefix /opt/aarch64_qt5.12 \
-opensource -confirm-license \
-release \
-strip \
-shared \
-xplatform linux-aarch64-gnu-g++ \
-make examples \
-nomake tools \
-nomake tests \
-widgets \
-dbus-runtime \
--pcre=qt \
--zlib=qt \
-no-openssl \
--freetype=qt \
--harfbuzz=qt \
-no-opengl \
--xcb=no \
--libpng=qt \
--libjpeg=qt \
--sqlite=qt \
-plugin-sql-sqlite \
-gif \
-ico \
-recheck-all如32位
./configure -extprefix /opt/arm_qt5.12 \
-opensource -confirm-license \
-release \
-strip \
-shared \
-xplatform linux-arm-gnueabi-g++ \
-make examples \
-nomake tools \
-nomake tests \
-widgets \
-dbus-runtime \
--pcre=qt \
--zlib=qt \
-no-openssl \
--freetype=qt \
--harfbuzz=qt \
-no-opengl \
--xcb=no \
--libpng=qt \
--libjpeg=qt \
--sqlite=qt \
-plugin-sql-sqlite \
-gif \
-ico \
-recheck-all
2、開始編譯
命令1: ./run.sh?備注:配置時會提示Do you accept the terms of either license? 選擇 y 即可
命令2: make
命令3: make install
備注1:
如果出現以下錯誤'.ROR: Invalid command line parameter '
./myautoconfigure.sh: 2: -opensource: not found
./myautoconfigure.sh: 3: -confirm-license: not found那么原因是這個文件是 DOS 格式的,需要轉換為 unix 格式。vi myautoconfigure.sh 然后 set ff = unix
(注意:這個問題在由windows 系統傳向 linux 系統的shell 文件(.sh)經常出現。)
備注2?:
make 時間會比較長,需要耐心等待。
make install 后,會生成一個目錄,在/opt/aarch64_qt5.12?
如果編譯沒有出錯,成功生成aarch64_qt5.12?,至此Qt源碼編譯完成。aarch64_qt5.12?會在下邊qtcreator配置時會用到。