0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

QT如何配置交叉编译工具?

技术让梦想更伟大 来源:木南创智 作者:木南创智 2022-10-28 09:31 次阅读

1. 交叉编译工具安装 (glibc版本需要和开发板上的版本相兼容)

方法1:

(安装的为最新版的glibc ,旧版glibc需要自行下载对应的交叉编译工具链)

sudoapt-getinstallgcc-arm-linux-gnueabihf
sudoapt-getinstallg++-arm-linux-gnueabihf
sudoaptinstallgcc-aarch64-linux-gnu
sudoaptinstallg++-aarch64-linux-gnu
1234

方法2:

从ARM官网下载交叉编译工具,解压后,配置全局变量

ARM交叉编译器

glibc版本问题见

2. arm版本的qmake编译安装

创建arm版本qmake的文件夹,这里我选择放在qt安装路径下,文件夹为arm_64_build,qt版本为5.12.2,x86版本的qmake的文件夹为5.12.2

cfa761d2-5614-11ed-a3b6-dac502259ad0.png

进入到arm_64_build文件夹下

%生成配置文件qtbase/bin/qt.conf文件
sudo../5.12.2/Src/configure-prefix$PWD/qtbase-opensource-xplatformlinux-aarch64-gnu-g++-no-opengl-nomakeexamples
%编译生成arm版本的qmake,时间较漫长
sudomake
%安装,安装的路径为qtbase/bin下
sudomakeinstall
123456

在make时遇到的问题

error: ‘SIOCGSTAMP’ undeclared (first use in this function); did you mean ‘SIOCGARP’?

解决:在5.12.2中找到socketcanbackend.cpp文件,添加头文件#include

python: not found %ubuntu内安装的python名字默认是python3 ,将 python3 链接到 python

解决:sudo ln -s /usr/bin/python3 /usr/bin/python

make过程中可能报一些奇怪的错误,常见为

root权限下全局变量已配置且可用,但sudo执行时仍找不到编译器,切换到root权限下 去掉sudo 直接运行

make编译过程中提示版本不匹配,确认交叉编译工具无误重新make几次,当切换交叉编译工具版本,重新make时需要将旧的文件全部删除,重新生成配置文件,再运行make

安装时提示qt4 无法安装,不影响,可以直接忽视,如在Qt工程编译时报错,重新运行make 并安装即可

qmake 的版本和交叉编译工具链的 版本需要对应,由于glibc版本不同,会报错找不到对应的库文件

cfb5ed7e-5614-11ed-a3b6-dac502259ad0.png

对应的qmake可执行文件在 qt_base/bin/路径下

3. qt配置

打开Qt ,工具->选项

cfdadf8a-5614-11ed-a3b6-dac502259ad0.png

Kits选项内 进行配置

编译器配置:

使用apt_get安装的交叉编译工具,可以使用qt默认的编译器配置,不需要重新配置

cfef3502-5614-11ed-a3b6-dac502259ad0.png

不是apt-get 安装时,交叉编译器的路径和qt默认的编译器路径不一致,需要手动添加

d0181364-5614-11ed-a3b6-dac502259ad0.png

Qt Versions选项下添加一个新的,选择对应的qmake路径

d029b6fa-5614-11ed-a3b6-dac502259ad0.png

添加一个新的构建套件,选择设备类型,选择编译器,选择qt版本,这里qt版本和编译器版本需要一致

d049193c-5614-11ed-a3b6-dac502259ad0.png

在工程中添加arm版本的构建套件,编译成功

d0580e1a-5614-11ed-a3b6-dac502259ad0.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8651

    浏览量

    361782
  • 编译器
    +关注

    关注

    1

    文章

    1577

    浏览量

    48614
  • Qt
    Qt
    +关注

    关注

    1

    文章

    299

    浏览量

    37339

原文标题:QT如何配置交叉编译工具?

文章出处:【微信号:技术让梦想更伟大,微信公众号:技术让梦想更伟大】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    嵌入式Qt-交叉编译FFmpeg与视频播放测试

    本篇介绍了嵌入式Qt播放视频的准备工作:交叉编译FFmpeg库并移植到Linux板子中,并先通过ffmpeg指令测试视频播放效果。下篇将尝试设计Qt界面来结合FFmpeg进行视频的播放
    的头像 发表于 09-15 02:08 1894次阅读
    嵌入式<b class='flag-5'>Qt</b>-<b class='flag-5'>交叉</b><b class='flag-5'>编译</b>FFmpeg与视频播放测试

    QT交叉编译如何显示中文字体

    (Sam-Linux070H)的Linux 内核版本是2.6.32;文件系统集成了QT4.7.3,方便用户开发带有界面的应用程序,交叉编译工具是:arm-2009q3.tar.bz2。
    发表于 12-04 14:31

    【Rico Board试用体验】之配置交叉编译环境和工具

    可能有些人自己电脑上已经搭建好了自己的交叉编译环境,但是为了保证后面不会出太多问题,建议还是保证和官方交叉编译环境一致,之前也有出现因为环境不一样,导致后面一直
    发表于 12-27 23:41

    qt creator编译QT5应用

    配置交叉编译打开Tools(工具) > Options(选项:Tools > Options > Build & Run and:
    发表于 05-05 15:17

    什么是交叉编译工具

    @LINUX# 嵌入式嵌入式LINUX交叉编译工具链前言一、什么是交叉编译工具链?二、ARM
    发表于 11-04 07:05

    如何建立交叉编译工具链并编译内核

    目录概述准备下载和自己开发板对应的BSP包:韦东山版Firefly版注意要用到的软件FileZilla虚拟机安装过程安装前置软件包获取内核源码和交叉编译工具链源码配置
    发表于 12-20 08:07

    有什么办法将编译工具配置Qt5.5吗?

    按照教程搭建的Qt4.7.0是可以配置编译工具的,并且可以在板子上运行。由于公司前期的qt程序是在qt
    发表于 12-31 06:24

    怎样去修改qt交叉编译器的路径呢

    配置qt交叉编译器,在版本上面出现了无法确定Qt安装路径,可能是qmake的路径设置错误?各位大神这个这么修改呀
    发表于 01-12 06:23

    OK3399的用户手册怎么不提供Qt交叉编译工具链呢?

    [td]OK3399的用户手册怎么不提供Qt交叉编译工具链呢,手册里指导说在板端开发编译,这显然是有点....[/td]
    发表于 01-13 07:45

    基本的Linux仿真环境和交叉编译工具链的配置

    基本的Linux仿真环境和交叉编译工具链的配置
    发表于 10-09 06:27

    QT/E和Qtopia的编译详解

    首先说说编译PC上的QT/E,我起初的时候不知道编译PC上的QT/E编译qpe和交叉
    发表于 05-10 10:53 2719次阅读

    嵌入式Linux开发环境搭建-(6)交叉编译QT4.8.7源码生成qmake工具

    交叉编译QT4.8.7源码生成qmake工具TQ-i.MX6UL使用的QT版本是QT4.8.7,
    发表于 11-02 13:21 3次下载
    嵌入式Linux开发环境搭建-(6)<b class='flag-5'>交叉</b><b class='flag-5'>编译</b><b class='flag-5'>QT</b>4.8.7源码生成qmake<b class='flag-5'>工具</b>

    技术分享 | i.MX8M Plus开发板交叉编译qt5.15.2

    编译qt,今天这个教程是个不错的解决方法。1►编译环境搭建首先将启扬提供的sdk交叉编译环境先行搭建起来,搭建方式比较简单,直接将启扬提供
    的头像 发表于 11-18 09:35 950次阅读
    技术分享 | i.MX8M Plus开发板<b class='flag-5'>交叉</b><b class='flag-5'>编译</b><b class='flag-5'>qt</b>5.15.2

    QT开发学习笔记1(安装交叉编译器)

    QT安装交叉编译
    的头像 发表于 02-18 10:02 368次阅读
    <b class='flag-5'>QT</b>开发学习笔记1(安装<b class='flag-5'>交叉</b><b class='flag-5'>编译</b>器)

    3562-Qt工程编译说明

    Qt 环境、交叉编译 工具链等。当用户使用 Qt Creator 工具和 X86 端
    的头像 发表于 03-05 09:19 119次阅读
    3562-<b class='flag-5'>Qt</b>工程<b class='flag-5'>编译</b>说明