2025年ubuntu下编译qt源码(ubuntu qt开发)

ubuntu下编译qt源码(ubuntu qt开发)嵌入式 QT 移植到 linux 开发 一 软件包 环境说明 1 1 软件包 1 1 1 通用交叉编译工具链 1 1 2 qt 源码 1 1 3 tslib 触摸屏校准插件 1 1 4 fonts 字体库 qt 支持中文 1 1 环境说明 二 环境搭建 2 1 ubuntu 下安装通用的交叉编译器 2 2 ubuntu 下编译 Qt 源码 2 2 1 编译这个有什么用呢 2 2 2

大家好,我是讯享网,很高兴认识大家。



嵌入式QT移植到linux开发

  • 一、软件包、环境说明
  • 1.1 软件包
  • 1.1.1 通用交叉编译工具链
  • 1.1.2 qt源码
  • 1.1.3 tslib(触摸屏校准插件)
  • 1.1.4 fonts字体库(qt支持中文)
  • 1.1 环境说明
  • 二、环境搭建
  • 2.1 ubuntu下安装通用的交叉编译器
  • 2.2 ubuntu下编译Qt源码
  • 2.2.1 编译这个有什么用呢?
  • 2.2.2 拷贝qt源码到ubuntu
  • 2.2.3 修改qmake.conf文件
  • 2.2.3 修改配置编译选项
  • 2.2.4 编译qt源码
  • 2.3 ubuntu下编译tslib库
  • 2.3.1 拷贝解压tslib到Ubuntu
  • 2.3.2 配置tslib
  • 2.4 配置ARM架构下Qt Creator环境
  • 2.4.1 qt creator环境配置
  • 2.4.2 编译测试qt程序
  • 2.5 移植qt到开发板文件系统
  • 2.5.1 拷贝库文件到开发板文件系统
  • 2.5.2 修改开发板/etc/profile,添加环境变量
  • 三、测试
  • 将SD插入开发板中,设置开发板从SD启动。 在这里插入图片描述
    讯享网 进入/temp目录里面,执行test_demo cd /temp/ https://blog.51cto.com/u_/test_demo & /&是后台运行/ 在这里插入图片描述 可以看到中文显示和触摸点击都ok!大功告成。 还有一点: 你编译qt编码的交叉编译器必须和编译qt测试程序的编译器一致,不然可能会有问题。

1.1.1 通用交叉编译工具链

gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

1.1.2 qt源码

qt-everywhere-src-5.12.9.tar.xz
下载地址:https://download.qt.io/archive/qt/5.125.12.9/single/

1.1.3 tslib(触摸屏校准插件)

tslib-1.21.tar.bz2
下载git地址:https://github.com/libts/tslib

1.1.4 fonts字体库(qt支持中文)

DroidSansFallback.ttf

1、Ubuntu版本:16.04
2、Qt应用程序版本:Q5.14.2
3、开发板:正点原子阿尔法开发板(I.MX6ULL)
4、触摸屏:正点原子RGB触摸屏4.3寸、800*480

qt 嵌套python_qt 嵌套python

qt 嵌套python_qt_02

sudo vim /etc/profile

qt 嵌套python_linux_03

source /etc/profile

arm-linux-gnueabihf-gcc -v (tab键可补全)

qt 嵌套python_qt_04

2.2.1 编译这个有什么用呢?

2.2.2 拷贝qt源码到ubuntu

qt 嵌套python_qt_05

2.2.3 修改qmake.conf文件

qt 嵌套python_ubuntu_06

编辑 qtbase/mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf文件

qt 嵌套python_qt_07

qt 嵌套python_qt 嵌套python_08

修改之后保存。

2.2.3 修改配置编译选项

在qt源码目录下有一个configure的脚本,使用对qt源码进行配置的。可以根据自己的需求裁剪一些不必要的功能,编译之后lib库文件大小当然也会相应的缩小。
终端输入 https://blog.51cto.com/u_/configure -help 可以查看配置选项
这里搞在弄一个shell脚本,进行配置qt源码:
终端输入 vim autoconfigure.sh
输入下面指令:

这个是我使用的配置文件,测试是没有问题的。直接复制的话注意每一行的那个(换行符)后面不要留空格,留空格的话执行会报找不到命令错误。

chmod +777 autoconfigure.sh

https://blog.51cto.com/u_/autoconfigure.sh

qt 嵌套python_qt_09

qt 嵌套python_开发板_10

2.2.4 编译qt源码

接上面,配置后面提示、输入make、现在就编译源码。

输入make install,装载编译后源码到执行目录。

qt 嵌套python_ubuntu_11

终端输入make、开始编译qt源码

qt 嵌套python_qt_12

qt 嵌套python_qt_13

源码编译完成后,在终端输入make install,将生成的lib库文件拷贝到指定的目录里面,我这指定的是qt源码目录下arm-qt文件夹里面。

qt 嵌套python_qt 嵌套python_14

2.3.1 拷贝解压tslib到Ubuntu

sudo apt-get update
sudo apt-get install autoconf automake libtool

qt 嵌套python_qt 嵌套python_15

qt 嵌套python_开发板_16

2.3.2 配置tslib

进入tslib文件夹里面,看到有一个configure的文件,和qt源码根目录里面的一样,也是一个配置脚本。我们需要执行这个脚本来指定使用交叉工具链和编译后生成文件的存放路径。
执行下列命令:

mkdir arm-tslib

qt 嵌套python_ubuntu_17

终端输入make回车,开始编译tslib。

qt 嵌套python_开发板_18

如果之前你已经编译过,那make之前需要执行make clean命令,把之前make编译的文件删除掉,不执行好像也可以,个人感觉最好清一下。

等待make完成之后,执行sudo make install指令(不加sudo好像不行,没权限)。

qt 嵌套python_linux_19

qt 嵌套python_ubuntu_20

make clean
make
sudo make install

qt 嵌套python_开发板_21

qt 嵌套python_开发板_22

file bin/ts_calibrate

qt 嵌套python_开发板_23

2.4.1 qt creator环境配置

qt 嵌套python_qt 嵌套python_24

qt 嵌套python_ubuntu_25

qt 嵌套python_qt 嵌套python_26

qt 嵌套python_qt_27

qt 嵌套python_ubuntu_28

http://www.openedv.com

2.4.2 编译测试qt程序

qt 嵌套python_ubuntu_29

qt 嵌套python_qt 嵌套python_30

qt 嵌套python_qt 嵌套python_31

qt 嵌套python_qt 嵌套python_32

注意:选择arm架构的开发套件生成的可执行文件是无法直接运行的,因为你的机器(电脑)是x86架构。

qt 嵌套python_ubuntu_33

ls
file test_demo

qt 嵌套python_qt_34

至此,Qt测试应用程序就做好了。

2.5.1 拷贝库文件到开发板文件系统

sudo cp -rvf arm-qt /media/wx/rootfs/usr/lib/

qt 嵌套python_linux_35

qt 嵌套python_qt_36

qt 嵌套python_linux_37

qt 嵌套python_linux_38

qt 嵌套python_ubuntu_39

qt 嵌套python_开发板_40

qt 嵌套python_ubuntu_41

2.5.2 修改开发板/etc/profile,添加环境变量

qt 嵌套python_qt 嵌套python_42

上面是我profile里面的内容,简单说一吧,其实我也刚接触不是了解太多,不正确的地址请指正哈。
export TSLIB_ROOT=/usr/lib/arm-tslib //tslib的放的位置
export TSLIB_TSDEVICE=/dev/input/event1 //触摸屏的设备文件
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf //tslib库的配置文件
export QT_ROOT=/usr/lib/arm-qt //qt源码库的位置
export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event1 //qt程序触摸对应的设备文件,我就是因为没有加这个导致qt程序运行起来后,无法触摸点击,鼠标是可以动
export QT_QPA_FONTDIR=/etc/fonts/ //字体库的位置、其他位置应该也可以
好了,到这里差不多了。

最后,我也是参考【正点原子】I.MX6U 移植Qt5.12.9 V1.1.pdf手册一步一步移植,刚开始移植也有各种各样的问题,多百度什么的就好了,由生到熟有个过程,故记录下来,后面学习回顾,希望也可以帮助到大家!

小讯
上一篇 2025-04-30 18:34
下一篇 2025-06-06 14:35

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/163798.html