当前位置: 首页 > news >正文

Ubuntu 16.04交叉编译arm-linux-gnueabihf的QT5.6.2


文章目录

  • 前言
  • 一、使用apt安装ubuntu库里的QT
  • 二、使用源码交叉编译QT5.6.2
  • 三、QTCREATOR添加交叉编译并测试
  • 总结


前言

一个项目要用QT5.6.2,交叉编译到imx6里运行,虚拟机ubuntu1604


一、使用apt安装ubuntu库里的QT

运行以下指令安装需要的包,其中libqt5serialport5-dev和qtmultimedia5-dev是我的QT程序在ubuntu下编译需要的组件g+±arm-linux-gnueabihf是用在imx6的交叉编译器

sudo apt install qtbase5-dev qt5-qmake qtcreator libqt5serialport5-dev  \
qtmultimedia5-dev gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf

安装完成后打开项目,不需要做任何配置即可在ubuntu上编译并运行程序(可能需要安装一些前置的软件,我这边虚拟机用很久了,大部分前置软件都有了),安装完成后版本为QT5.5.3、QTCREATOR3.5.1、arm-linux-gnueabihf-gcc5.4.0
此QT主要用在做验证的,在PC上看界面比较方便

二、使用源码交叉编译QT5.6.2

QT5.6.2比较老了,源码比较难找,在这里贴出来https://download.csdn.net/download/qq_36517072/92182633
解压后修改qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf,因为我们使用的编译器是arm-gnueabihf-g++,带硬件浮点没匹配的

# modifications to g++.conf
QMAKE_CC                = arm-linux-gnueabihf-gcc
QMAKE_CXX               = arm-linux-gnueabihf-g++
QMAKE_LINK              = arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB        = arm-linux-gnueabihf-g++# modifications to linux.conf
QMAKE_AR                = arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY           = arm-linux-gnueabihf-objcopy
QMAKE_NM                = arm-linux-gnueabihf-nm -P
QMAKE_STRIP             = arm-linux-gnueabihf-strip
load(qt_config)

在源码目录输入以下指令生成QT5.6.2的交叉编译版本,注意之前安装完arm-linux-gnueabihf-g++要重新打开一个终端,否则环境变量里可能没有arm-linux-gnueabihf-g++

./configure  -prefix /opt/qt5.6.2 -opensource -confirm-license \-xplatform linux-arm-gnueabi-g++  -no-opengl \
-no-openssl -no-sse2 -no-cups -no-glib -no-pkg-config -no-separate-debug-info
make -j8
sudo make install -j8

三、QTCREATOR添加交叉编译并测试

添加交叉编译QT qmake
alt text
添加交叉编译器
alt text
添加KIT,使用之前的QT和编译器并应用
alt text
使用ARM-GCC编译程序,生成应用程序
alt text
最粗暴配置库直接将/opt/qt5.6.2/lib全丢到根文件系统下的/usr/lib/下,空间敏感也可以自己裁剪
上传并赋予执行权限可以正常运行
alt text


总结

主要介绍了ubuntu1604下arm-linux-gnueabihf交叉编译QT5.6.2并测试

http://www.dtcms.com/a/515701.html

相关文章:

  • 神经网络详解
  • 网站如何防止黑客攻击宁波新闻
  • 为打印预览对话框 PrintPreviewDialog 添加保存到 PDF 文件按钮源代码详解
  • Nevercenter CameraBag Photo for mac照片滤镜美化软件
  • 设计模式-策略模式:从鞋厂促销活动看算法的灵活切换
  • Java实现Excel转PDF
  • Fenwick 树进行快速统计
  • Cocos creator2.4.4 处理 16KB 问题
  • 旅游网站的设计的前提成都那家网站做的好
  • undefined reference to `cv::String::dea llocate()‘
  • 计划任务原理及实战
  • 做网站设计最好的公司做旅游网站的论文
  • 【Android】Handler/Looper机制相关的类图和流程图
  • ARM《1》_回顾gcc、动态编译和静态编译、MakeFile的使用
  • 网络环路:隐形威胁的破解之道
  • stm32 can错误中断不处理
  • 我们平常说的连网是指什么?
  • 网站优化人员新乡市延津县建设局网站
  • 网站建设分析从哪几个方面东莞市招聘网
  • 设计模式-责任链模式:从鞋厂审批流程看请求处理的艺术
  • 21_AI智能体开发架构搭建之基于Flask蓝图模块化构建可扩展的知识库服务实践
  • 【手机篇】AI深度学习在手机摄像头模组支架外观检测应用方案
  • 手机版矩阵系统源码搭建与定制开发:深度技术解析与落地实践
  • 做网站首页可以用传媒公司吗软件 项目管理系统
  • 舟山建设工程信息网站北京设计公司招聘
  • Elasticsearch还有哪些常用的分词器?
  • 使用CNN构建VAE
  • TESOLLO:使用MANUS Franka机械臂提高机器人灵活性
  • 西宁建设网站软件陕西交通建设有限公司网站
  • COMAU柯马焊接机器人气保焊省气