QT5.9移植

1.下载Qt源码

        Qt源码下载地址:Index of /archive/qt 其他源码和其他安装包都是有的。

        下载的版本是5.9版本的Index of /archive/qt/5.9/5.9.7/singleQt源码。

2.解压源码

        $ mkdir  qt5.9

        $cd qt5.9

        将下载文件拷贝到当前目录下面。解压

        $ xz -d qt-everywhere-opensource-src-5.9.7.tar.xz

        $ tar -xvf qt-everywhere-opensource-src-5.9.7.tar

3.配置编译

    #!/bin/bash

./configure \

-prefix /usr/local/qt5 \

-extprefix $HOME/qt5/qt5.9 \

-hostprefix $HOME/qt5/qt5.9 \

-release \

-static \

-make libs \

-device linux-imx6-g++ \

-device-option CROSS_COMPILE=/home/yuan/re-fsl/fsl-releases-bsp/imx-fb/tmp/sysroots/x86_64-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- \

-sysroot /home/yuan/re-fsl/fsl-releases-bsp/imx-fb/tmp/sysroots/imx6qsabresd \

-opengl es2 \

-qpa eglfs -v \

-commercial \

-nomake examples \

-nomake tests -v \

-nomake tools \

-qt-freetype \

-qt-libjpeg \

-qt-libpng \

-qt-pcre \

-no-iconv \

-no-glib \

-no-kms \

-no-tslib \

-no-zlib \

-no-mtdev \

-no-accessibility \

-no-feature-accessibility \

-no-directfb \

-no-openssl \

-no-linuxfb \

-no-openvg \

-skip qtpim \

-skip qtsvg \

-skip qttools \

-skip qtsensors \

-skip qtsystems \

-skip qtlocation \

-skip qtserialbus \

-skip qtserialport \

-skip qtimageformats \

-skip qtrepotools \

-skip qtxmlpatterns \

-skip qtwebengine -v

其中的参数说明

-prefix:目标板的引用路径。 这个路径有两个作用,一个是指定目标机的Qt库路径,也就是说,当你把Qt库部署到目标机时,需要把Qt库拷贝到这个路径下,Qt程序就可以自动找到库。第二个是,如果你没有指定extprefix, install的时候会把Qt库部署到sysroot+prefix这个路径下。

-extprefix:  介于默认会把Qt库部署到sysroot+prefix路径下,如果你不想这样,可以设置extprefix, 这样Qt库会部署到这个目录下而不是sysroot下。可以避免污染sysroot。我个人建议编译的时候设置-prefix 和-extprefix 就可以了。

-hostprefix: 如果你还有更奇葩的需求,比如qmake等工具不要和Qt库安装在一起,那么这个参数就很适合你。这个参数是指定编译工具的安装位置,不包括Qt库。指定这个变量之后,qmake等工具会安装在这个目录下,extprefix下面就不会有这些工具了。我目前没想到这么做有啥好处。所以不建议使用。

建议编译时制定两个路径,一个是目标板部署路径-prefix,一个是宿主机部署路径 -extprefix. 如果不怕污染sysroot的话,指定一个prefix就可以了。

CROSS_COMPILE:交叉编译器目录,版主我的是yocto里面的交叉编译目录,根据自己的目录修改

-static :静态编译

-sysroot:文件系统目录

3.编译

    make

    make install

在配置的安装目录应该可以看到已经以下目录

bin

doc

include

lib

mkspecs

plugins

qml

在bin目录下可以找到qmake说明已经编译完成了

4.Qt Creator配置

1.配置编译器

2.配置qmake

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容