問題1:
源碼頭文件問題:
有部分頭文件缺少#include<limits>頭文件
home/jetson/qt-everywhere-src-5.15.2/qtbase/include/QtCore/qfloat16.h
/home/jetson/qt-everywhere-src-5.15.2/qtbase/src/corelib/text/qbytearraymatcher.h
問題2:
Cat config.log |grep -i ***
查找問題
問題3:
Project ERROR: Could not find feature c++11.
源碼刪除重新編譯
問題4:
刪除對qtquick3d的添加編譯
問題 5:
單獨對X11Extras的編譯安裝
進入源碼~/qt-everywhere-src-5.15.2/qtx11extras/src修改src.Pro:
TEMPLATE = subdirs
QT_FOR_CONFIG += gui-private
SUBDIRS += x11extras
Config配置:
~/qt-arm/bin/qmake CONFIG+=x11extras PREFIX=~/qt-arm
make -j4
make -install
可以在生成的qt-arm/lib里面看到這個libQt5X11Extras.so
qt源碼路徑:~/qt-everywhere-src-5.15.2
qt編譯路徑:~/qt-build
Iqt生成目錄:~/qt-arm
使用的腳本:
#!/bin/bash
# Qt 源碼路徑 & 構建輸出路徑
QT_SRC_DIR=~/qt-everywhere-src-5.15.2
BUILD_DIR=~/qt-build
INSTALL_DIR=~/qt-arm
# 創建構建目錄
mkdir -p "$BUILD_DIR"
cd "$BUILD_DIR"
# 設置 C++11 編譯(根據 qtx11extras 要求)
export CXXFLAGS="-std=c++11"
# 設置交叉編譯器
export CC=/usr/bin/aarch64-linux-gnu-gcc
export CXX=/usr/bin/aarch64-linux-gnu-g++
# 配置 Qt 構建(不需要顯式啟用 qtx11extras,qtbase 會自動包括)
$QT_SRC_DIR/configure \
? ? -prefix "$INSTALL_DIR" \
? ? -opengl es2 \
? ? -opensource \
? ? -confirm-license \
? ? -make libs \
? ? -no-pch \
? ? -no-qml-debug \
? ? -no-gtk \
? ? -no-warnings-are-errors \
? ? -no-dbus \
? ? -no-ssl \
? ? -nomake examples \
? ? -nomake tests \
# ? ?-qtquick3d
# 編譯 & 安裝
make -j$(nproc)
make install
?