操作步驟如下:
- 克隆 Qt 倉庫:
git clone https://code.qt.io/qt/qt5.git
cd qt5
- 切換到 Qt 5.15.3 標簽:
git checkout v5.15.3-lts-lgpl
- 初始化子模塊:
perl init-repository
- 配置和編譯 Qt:
./configure -prefix $HOME/Qt5.15.3 -opensource -confirm-license -nomake tests -nomake examples
make -j8
make install
編譯錯誤解決:
- 如第四步編譯報錯如下:error: ‘numeric_limits’ is not a member of ‘std’,原因:說明 Qt 5.15.3 源碼中 XX文件中用到了 std::numeric_limits,但是當前文件沒有 #include ,導致編譯器找不到它;這是一個編譯器版本兼容性問題,尤其常見于使用 GCC 10+ 或 GCC 11+ 編譯 Qt 老版本源碼時。
解決方法:
#include //那個文件缺少定義,就在那個頭文件添加