操作步骤如下:
- 克隆 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:
cpp
./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 //那个文件缺少定义,就在那个头文件添加