喜迎
元旦

QT环境配置


一、下载QT源码

QT各源码下载地址:http://download.qt.io/archive/qt/ (我这里下载的QT5.12.5)

二、编译源码

打开虚拟机解压qt源码并进入qt目录

tar -xvJf qt-everywhere-src-5.12.5.tar.xz
cd qt-everywhere-src-5.12.5

配置编译模块 我这边是写成了一个脚本a.sh 内容如下:

QT_INSTALL_DIR=/opt/tool/arm-linux-gcc5.31/
CROSS_COMPILE=/opt/tool/arm-linux-gcc5.31/bin/arm-linux-gnueabi-gcc
SYSROOT_DIR=/opt/tool/arm-linux-gcc5.31/sysroot

./configure \
    -opensource \
    -confirm-license \
    -extprefix $QT_INSTALL_DIR \
    -sysroot $SYSROOT_DIR \
    -xplatform linux-arm-gnueabi-g++ \
    -device-option CROSS_COMPILE=$CROSS_COMPILE \
    -R /usr/lib \
    -no-strip \
    -c++std c++11 \
    -shared \
    -nomake examples \
    -accessibility \
    -no-sql-db2 \
    -no-sql-ibase \
    -no-sql-mysql \
    -no-sql-oci \
    -no-sql-odbc \
    -no-sql-psql \
    -no-sql-sqlite2 \
    -no-sql-tds \
    -no-sql-sqlite \
    -plugin-sql-sqlite \
    -no-sse2 \
    -no-sse3 \
    -no-ssse3 \
    -no-sse4.1 \
    -no-sse4.2 \
    -no-avx \
    -no-avx2 \
    -no-mips_dsp \
    -no-mips_dspr2 \
    -qt-zlib \
    -no-journald \
    -qt-libpng \
    -qt-libjpeg \
    -qt-freetype \
    -qt-harfbuzz \
    -no-openssl \
    -no-xcb-xlib \
    -no-glib \
    -no-pulseaudio \
    -alsa \
    -gui \
    -widgets \
    -v \
    -optimized-qmake \
    -no-cups \
    -no-iconv \
    -evdev \
    -no-icu \
    -no-fontconfig \
    -no-strip \
    -pch \
    -dbus \
    -no-use-gold-linker \
    -no-directfb \
    -no-eglfs \
    -linuxfb \
    -no-kms \
    -no-opengl \
    -no-vulkan \
    -no-system-proxies \
    -no-slog2 \
    -no-pps \
    -no-imf \
    -no-lgmon \
    -tslib \
    -skip qt3d \
    -skip qtwebengine \
    -skip qtwebview \
    -skip qtx11extras \
    -nomake tests \
    -nomake tools

这里的QT_INSTALL_DIR是安装目录 CROSS_COMPILE是指定编译器 SYSROOT_DIR是开发板文件系统的sysroot(这里我把安装目录跟交叉编译器放在一个路径)

这里跳过了 -skip qt3d \ -skip qtwebengine \ -skip qtwebview \ -skip qtx11extras \这几个模块 需要的话删除即可

给脚本权限并执行脚本

chmod 777 a.sh && ./a.sh

配置完毕执行 等待系统编译完 编译速度取决于电脑配置

make -j16 && sudo make install

**编译完成后可以看到安装路径下多出来了qt的库 **

执行一下

qmake -v

现在我们就构建成功了qt5.12.5+交叉编译器了

三、把QT环境移植到arm开发板

由于我这边是分开构建的 你们可以再configure的时候不要跟交叉编译器放在一个目录 另外指定个Qt_5.12目录

编译完成后就会的到Qt_5.12.5的库了

接着我们把Qt_5.12.5目录拷贝在开发板上面 我这边放在了/usr/local/目录下

然后用个脚本qt_env.sh配置环境变量 内容如下

export  QTDIR=/usr/local/Qt_5.12.5
if [ -d $QTDIR ];then

        export  QT_ROOT=$QTDIR
        export  PATH=$QTDIR/bin:$PATH
        export  LD_LIBRARY_PATH=$QTDIR/lib:/usr/lib/cedarx/:$LD_LIBRARY_PATH

        export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
        export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
        export QT_QPA_FONTDIR=$QT_ROOT/fonts
        export QML2_IMPORT_PATH=/usr/local/Qt_5.12.5/qml
        export QML2_PACKAGE_PATH=/usr/local/Qt_5.12.5/qml


        export QT_QPA_PLATFORM=linuxfb
        #export QT_QPA_EGLFS_INTEGRATION=eglfs_mali
        #export QT_QPA_FB_HIDECURSOR=1
        #export QT_QPA_EGLFS_HIDECURSOR=1
        #export QT_QPA_EGLFS_ROTATION=90

        export QWS_MOUSE_PROTO=
        #export DBUS_SESSION_BUS_ADDRESS=`cat /tmp/dbusaddr`
        mkdir -p /dev/shm
        ulimit -c unlimited
        echo "find qt5 installed done"
fi

设置一下环境变量

source /qt_env.sh

再运行程序即可


文章作者: Mai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Mai !
 上一篇
安卓can开发
安卓can开发
Android CAN 应用开发在工作时发现我们很多客户对于Android can应用开发没有一点头绪,下面我通过一个简单项目来实现一个can通信demo。 开发准备确保开发板硬件上有can节点存在,并且确保通信正常 验证方法如下: 一 、
2024-08-14 Mai
下一篇 
  目录