QT5.12.5移植到ARM平台下的方法步骤

 更新时间:2024年01月03日 10:22:43   作者:----云烟----  
本文主要介绍了QT5.12.5移植到ARM平台下的方法步骤,包括修改配置文件、代码修改以及测试运行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一 、安装arm-linux-gcc交叉编译工具链

我用第一种方法去编译QT源码成功的,第二种方法好像不行。

方法一

sudo apt-get install gcc-arm-linux-gnueabihf

sudo apt-get install g++-arm-linux-gnueabihf

查看arm-linux-gnueabihf-gcc的位置

whereis arm-linux-gnueabihf-gcc

which arm-linux-gnueabihf-gcc

方法二 去网站下载ubantu对应的交叉编译器

例如:arm-linux-gcc-4.6.4-arm-x86_64.tar.bz2

1.解压

tar -xjvf arm-linux-gcc-4.6.4-arm-x86_64.tar.bz2 

2.创建目录并赋予权限存放解压的目录

sudo mkdir /usr/local/arm

sudo chmod 777 /usr/local/arm

3。复制文件到创建好的目录中

sudo cp -r gcc-4.6.4 /usr/local/arm

4.添加环境变量

sudo vi /etc/profile


export PATH=$PATH:/usr/local/arm/gcc-4.6.4/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/arm/gcc-4.6.4/lib

5.重启该文件

source /etc/profile

6.检验安装成功

 arm-linux-gcc -v

7.编译文件,查看文件是不是arm的可执行文件

arm-linux-gcc test_1.c -o test_1

如果编译不行的话,可以在下面文件添加一下,看看能否成功

sudo vi ~/.bashrc

export PATH=$PATH:/usr/local/arm/gcc-4.6.4/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/arm/gcc-4.6.4/lib

二 编译QT官方源码

2.1 QT5.12.5官方源码下载

Index of /archive/qt/5.12/5.12.5/single

2.2 编译QT5.12.5官方源码

1.解压

tar -vxf qt-everywhere-src-5.15.2.tar.xz
cd qt-everywhere-src-5.15.2

2.修改交叉编译架构用到的信息

vim qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf

改为你对应的下载的arm平台下的交叉编译器

3.创建一个脚本文件,用于生成Makefile,在qt编译根目录执行命令

vim autoConfigure.sh

输入以下内容

#!/bin/bash
./configure -prefix /home/wu/qt5 \
-release \
-opensource \
-no-accessibility \
-make libs \
-xplatform linux-arm-gnueabi-g++ \
-optimized-qmake \
-pch \
-qt-zlib \
-qt-freetype \
-tslib \
-skip qtlocation \
-no-iconv \
-no-opengl \
-no-sse2 \
-no-openssl \
-no-cups \
-no-glib \
-no-pkg-config \
-no-separate-debug-info \

-prefix /home/wu/qt5 :代表着是生成的库文件的目录

4.执行命令会生成Makefile文件

chmod 777 qt.configure.sh
./autoConfigure.sh

5.编译和安装

1. make -j8 // -j8为8线程编译,可根据服务配置调整参数
2. sudo make install // 将tslib安装到指定目录

6.切换目录,查看目录是否生成东西

cd /home/wu/qt5
ls

三. 设置QtCreator编译环境

首先安装QtCreator工具。安装步骤及下载地址

1.进入QtCreator开发环境,在菜单中选择Tools->Options,在弹出的对话框中,选择Kits,选择标签Compilers,按下图设置,选择手动添加C(GCC)和C++(G++)交叉编译器,如下图所示

2.切换到Qt Versions标签,点击“Add”按钮,选择qmake,如图所示:

3.切换到Kits标签,点击“Add”按钮,将上面设置的CompilersQt Versions添加到新的配置,然后设置如下图所示:

4.保存以上的配置后,创建一个新的工程进行测试,创建时选择新添加的Kits:

5.点击构建 验证是配置后的ARM交叉工具链编译,并且编译成功:

6.在Debug的目录下可以看见生成的test_9可执行文件

也可以通过另一种方法生成可执行文件,进入那个创建目录的文件夹

qmake
make

qmake生成Makefile文件,make生成test_9可执行文件(这个生成的不是arm的可执行文件)

到此这篇关于QT5.12.5移植到ARM平台下的方法步骤的文章就介绍到这了,更多相关QT5.12.5移植到ARM内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C++中使用FFmpeg适配自定义编码器的实现方法

    C++中使用FFmpeg适配自定义编码器的实现方法

    本文介绍了在C++中使用FFmpeg库进行自定义编码器适配的实现方法。文章通过具体的代码示例,介绍了FFmpeg的基本使用方法和自定义编码器的实现过程,帮助读者了解如何在C++中进行音视频编码和解码的开发工作,并能够实现自定义的编码器适配
    2023-04-04
  • C语言实现小小圣诞树源代码

    C语言实现小小圣诞树源代码

    圣诞节当然要有个圣诞树了,今天给你们用C语言编写一个雪夜圣诞树,这篇文章主要给大家介绍了关于C语言实现小小圣诞树的相关资料,需要的朋友可以参考下
    2023-12-12
  • C++浮点型的存储方式详解

    C++浮点型的存储方式详解

    本篇文章是对C/C++浮点数在内存中的存储方式进行了详细的分析介绍,需要的朋友参考下,希望能够给你带来帮助
    2021-09-09
  • linux内核select/poll,epoll实现与区别

    linux内核select/poll,epoll实现与区别

    这篇文章主要介绍了linux内核select/poll,epoll实现与区别,需要的朋友可以参考下
    2016-11-11
  • C语言中对数组赋值的三种形式

    C语言中对数组赋值的三种形式

    这篇文章主要给大家介绍了关于C语言中对数组赋值的3种形式,文中通过示例代码介绍的非常详细,对大家学习或者使用C语言具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • C++的缺省参数你了解嘛

    C++的缺省参数你了解嘛

    这篇文章主要为大家介绍了C++缺省参数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Matlab实现同步子图视角的方法详解

    Matlab实现同步子图视角的方法详解

    这篇文章主要和大家分享三个可以Matlab中更简便实现同步子图视角的技巧,文中的示例代码讲解详细,感兴趣的小伙伴可以学习一下
    2022-06-06
  • C++实现LeetCode(200.岛屿的数量)

    C++实现LeetCode(200.岛屿的数量)

    这篇文章主要介绍了C++实现LeetCode(200.岛屿的数量),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C/C++后端学习与练习深入

    C/C++后端学习与练习深入

    这篇文章主要介绍了C/C++对于后端的学习与练习,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • C++程序简单示例

    C++程序简单示例

    这篇文章主要给大家分享的是C++程序简单示例,下面文章将围绕C++程序的相关资料展开内容,需要的朋友可以参考一下,希望对你有所帮助
    2021-11-11

最新评论