1.下载源码
下载网站:Index of /new_archive/qt/5.14/5.14.2/single
2.QWebEngine相关依赖
sudo apt-get install flex libicu-dev libxslt-dev
sudo apt-get install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev
sudo apt-get install libdus* dbus*
sudo apt-get install libfontconfig1-dev fontconfig libcap-dev libxtst-dev libxext-dev
sudo apt-get install libpulse-dev libudev-dev libpci-dev libnss3-dev libasound2-dev libxss-dev
sudo apt-get install libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
sudo apt-get install libcups2* pulseaudio* alsa-* mesa-* systemd* system-* libgudev-1.0-dev libatspi2.0* at-spi2-* libclipper-dev
sudo apt-get install nodejs gyp ninja-build libdrm-dev
3.编译源码
sudo tar -xvf qt-everywhere-src-5.14.2.tar.xz -C /opt/
sudo touch auto.sh
sudo chmod 755 auto.sh
sudo vim auto.sh
3.1 当前目录下编写一个autoconfigure.sh文件,然后根据自己的情况,写入如下配置
./configure -prefix /home/book/qt-everywhere-src-5.14.2/arm-qt \
-opensource \
-confirm-license \
-release \
-strip \
-shared \
-optimized-qmake \
-c++std c++11 \
--rpath=no \
-pch \
-skip qt3d \
-skip qtactiveqt \
-skip qtandroidextras \
-skip qtcanvas3d \
-skip qtconnectivity \
-skip qtdatavis3d \
-skip qtdoc \
-skip qtgamepad \
-skip qtlocation \
-skip qtmacextras \
-skip qtnetworkauth \
-skip qtpurchasing \
-skip qtremoteobjects \
-skip qtscript \
-skip qtscxml \
-skip qtsensors \
-skip qtspeech \
-skip qtsvg \
-skip qttools \
-skip qttranslations \
-skip qtwayland \
-skip qtwinextras \
-skip qtx11extras \
-skip qtxmlpatterns \
-make libs \
-make examples \
-nomake tools -nomake tests \
-gui \
-widgets \
-dbus-runtime \
--glib=no \
--iconv=no \
--pcre=qt \
--zlib=qt \
-no-openssl \
--freetype=qt \
--harfbuzz=qt \
-no-opengl \
-linuxfb \
--xcb=no \
-tslib \
--libpng=qt \
--libjpeg=qt \
--sqlite=qt \
-plugin-sql-sqlite \
-I/home/book/tslib/include \
-L/home/book/tslib/lib \
-recheck-all
备注:
参数说明:
-xplatform : 选择交叉编译时的目标(qtbase/mkspecs/目录中目标平台)
-prefix:Qt最终安装到Arm板中的位置
-extprefix:PC上交叉编译好的Qt的位置
-hostprefix:编译出来给PC用的交叉编译工具存放的位置
-verbose:打印配置过程中步骤信息
-opensource:编译Qt的开源版本
-confirm-license:自动确认许可
-release:编译Qt的release版本
-shared:构建 Qt 共享库,-static 静态库
-make libs:编译 lib 组件
-nomake tests:不编译 tests组件
-nomake examples:不编译 examples 组件
-skip ,跳过不需要的模块
-no-opengl: 我在虚拟机下编译opengl模块报错,未解决 所以选择不编译
3.2.执行脚本文件
sudo ./auto.sh
sudo make -j8
sudo make install
3.3.安装相关依赖
sudo apt install gperf
#安装完成之后查看 gperf --version 查看版本信息
3.4.删除缓存,然后重新执行auto.sh 脚本编译
sudo rm config.cache
#避免反复报没有gperf等依赖错误 如果还报错,则将gperf 添加到PATH环境变量中