在Ubuntu下交叉编译 Qt 应用程序(完整步骤)

1、下载交叉编译器下:
st-example-image-qt wayland-openstlinux-weston-stm32mp1-x86_64-toolchain-3.1-snapshot.sh
通过网盘分享的文件:STM32项目
链接: https://pan.baidu.com/s/1hTvJT2r6czWCrKSuNEZCuw?pwd=th7t 提取码: th7t
--来自百度网盘超级会员v4的分享
2、 赋予可执行权限:

复制代码
chmod +x st-example-image-qtwayland-openstlinux-weston-stm32mp1-x86_64-toolchain-3.1-snapshot.sh

3、执行

复制代码
./st-example-image-qtwayland-openstlinux-weston-stm32mp1-x86_64-toolchain-3.1-snapshot.sh

4、查看安装目录下是否存在文件

复制代码
ls /opt/st/

5、使能!以上步骤就已经安装了交叉编译工具链,但我们只是安装了它,要使用时还需要使能它(注意由于未将工具链放置在系统环境下,所以每次开启一个新的终端,都需要使能才能编译):

复制代码
source /opt/st/stm32mp1/3.1-snapshot/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi

6、使用 qmake 指令生成 Makefile,用于编译(使用qmake指令需要在QT工程目录下,含.pro文件):

复制代码
qmake

7、额外插入几条命令(可跳过):

复制代码
make distclean  #用于清除qmake产生的产物
make clean  #用于清除编译产生的除makefile以外的产物

8、编译:

复制代码
sudo apt-get install make // 若找不到 make 指令,请安装 make。
1)make -j 8     #8是指Ubuntu核心数,根据每个人的电脑来,使用这条指令可以加快编译速度
或者2) make   #直接编译

9、验证:

编译成功后,工程下会生成一个同工程名一样的绿色文件名,表示编译成功。

10、连接开发板,STM32MP157,线插好OTG和TTL再上电。连接好后启动开发板,在CRT下建立板子的终端,如下图,使用ifconfig指令获取板子的地址。USB_OTG 会在系统启动后生成一个 usb0 网络节点,我们可以使用 ifconfig 指令查看。


11、拷贝绿色文件 到开发板的 /home/root 目录

复制代码
scp 文件 用户名@ip 地址:路径    #拷贝文件
scp -r 文件夹 用户名@ip 地址:路径     #拷贝文件夹


12、查看板子文件目录下是否刚刚拷贝的内容

13、运行

复制代码
./QT_LOG


退出按Ctrl+Z
13、最终在板子上运行如下:

相关推荐
LedgerNinja1 小时前
WEEX API 自动化交易实践:下单、撤单、订单查询与状态闭环
运维·自动化
shwill1232 小时前
PID 算法(三)--- 增量 PID ↔ 单神经元 PID 等价映射
linux·算法
执笔画流年呀2 小时前
Linux搭建Java项目部署环境
java·linux·运维
Dory_Youth3 小时前
联想笔记本电脑失灵
运维·笔记·电脑
Sisphusssss3 小时前
香橙派5plus GPIO
linux·python·ubuntu
W.W.H.3 小时前
嵌入式 Linux外接USB/WIFI模块兼容5G频段实战
linux·运维·5g·wifi
运维大师3 小时前
【K8S 运维实战】24-资源优化HPA与VPA
运维·kubernetes·github
影视飓风TIM3 小时前
Linux下C程序编译:gcc 动态链接与静态链接全解
linux·c语言
GlobalHRTalk3 小时前
埃及名义雇主EOR业务概述与市场发展优势分析
大数据·运维·人工智能
瞬间&永恒~3 小时前
【MySQL】 主从复制多拓扑搭建实验
运维·数据库·mysql·云原生