欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt5之海思交叉编译笔记

程序员文章站 2022-04-30 11:35:10
...

一、搭建环境

    Win7 + VMware15 + Ubuntu16.04(64位) + Qt5.9.9

    交叉工具链:arm-hisiv500-linux-

二、交叉编译

    1)下载源码 

        http://download.qt.io/archive/qt/

        当前我下载了和我的 Qt 同一个版本的源码 qt-everywhere-opensource-src-5.9.9.tar.xz 。并将其下载到 Linux 系统下,当前我存放在 /home/work/tools/ 目录下。然后解压源码包。

xz -d qt-everywhere-opensource-src-5.9.9.tar.xz
tar -xvf qt-everywhere-opensource-src-5.9.9.tar

        之后就会得到一个 qt-everywhere-opensource-src-5.9.9 的目录 ,之后 cd 进入即可。

Qt5之海思交叉编译笔记

    2)配置编译环境

./configure -prefix /opt/qt_hisiv500 -release -opensource -qt-libpng -qt-libjpeg -plugin-sql-sqlite -widgets -no-iconv -no-dbus -no-openssl -no-iconv -no-accessibility -no-sse2 -silent -xplatform linux-arm-gnueabi-g++ -nomake tools -nomake examples -nomake tests -qt-freetype -no-glib -strip -linuxfb -no-opengl

     注意:-prefix 后面这个 /opt/qt_hisiv500 是后面安装的路径,可自行修改 !!!

Qt5之海思交叉编译笔记

        以下根据提示输入 y 即可 

Qt5之海思交叉编译笔记

 

Qt5之海思交叉编译笔记

   3)修改交叉编译器

        当我们配置成功之后 ,当前目录就会有一个 Makefile 文件, 在这文件中搜索 qmake.conf ,这个就是我们需要修改的文件

Qt5之海思交叉编译笔记

        上图中我们可以看出 qmake.conf 文件所在的路径,打开这个文件如下图所示

Qt5之海思交叉编译笔记

         上图中 arm-linux-gnueabi- 是默认的交叉编译器,我们需要改成自己需要的交叉编译器即可,如下所示

Qt5之海思交叉编译笔记

    4)编译

make

 

Qt5之海思交叉编译笔记

    5)安装

make install

 

Qt5之海思交叉编译笔记

Qt5之海思交叉编译笔记

         上图看出在 /opt 目录下多出来一个 qt_hisiv500 的目录

Qt5之海思交叉编译笔记

        在 qt_hisiv500/bin 目录下有一个 qmake 工具 ,这个是最常用的,之后会使用这个交叉编译代码,之后就可以在 ARM 板子上运行了。  

三、测试

    1)新建 Qt5 项目

        这个步骤此处省略,当前已经建好Qt工程 ,不一定是 Qt 的界面工程,也可以是 Qt 的纯 C 工程或者是 纯 C++ 工程。

Qt5之海思交叉编译笔记

         上图是一个 Qt5 界面工程,可以使用 Qt5 打开并且运行,但是此处使用 qmake 自己编译。

    2)使用 Qt 自带的 qmake 编译工程

        我的 Qt5.9.9 安装在 /opt/Qt5.9.9 目录下,所以自带的 qmake 所在目录如下

Qt5之海思交叉编译笔记

    使用Qt5自带的 qmake 生成 Makefile

        在 Qt 工程目录下输入一下命令

/opt/Qt5.9.9/5.9.9/gcc_64/bin/qmake

 

Qt5之海思交叉编译笔记

       上图可以看出输入命令之后就有一个 Makefile,这样可以输入 make 编译 Qt 工程了

make

Qt5之海思交叉编译笔记

Qt5之海思交叉编译笔记

        上图看出编译之后的可执行文件是 untiled ,使用 file 命令看出这是一个运行于 X86 平台的可执行程序,运行结果如下。

Qt5之海思交叉编译笔记

    3)使用编译好的交叉工具 qmake 编译 Qt5 工程

        其实和之前使用自带的 qmake 操作一样,生成 Makefile 的步骤如下

/opt/qt_hisiv500/bin/qmake

Qt5之海思交叉编译笔记

        同样生成 Makefile 文件,打开 Makefile 可以看出使用 arm-hisiv500-linux- 进行编译的

Qt5之海思交叉编译笔记

    make 编译

Qt5之海思交叉编译笔记

        上图看出编译之后得到的可执行文件是运行在 ARM 平台的,所以在 Ubuntu 中无法运行。

相关标签: 海思