Imx6ull开发板移植QT
1.搭建嵌入式开发环境
我用的是百问网提供的imx6ull开发板和文档教程来学习和总结吧,首先得先把环境搞好,100ask_imx6ull_mini-sdk的文件夹里面的内容可以参考我之前写的文章《下载BSP及配置工具链》
在这里插入图片描述
vim ~/.bashrc
该文件中添加环境变量:
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
export PATH=$PATH:/home/用户名/100ask_imx6ull_mini-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
设置完毕以后让环境变量生效:
source ~/.bashrc
由于我用QT会比较多一些,所以我会在100ask_imx6ull-qt defconfig这个配置文件的基础上做增项,编译和配置命令如下:
-
cd Buildroot…类的文件,可能不同时间生成的Buildroot…文件不一样。
-
make clean
-
make 100ask_imx6ull_mini_ddr512m_systemV_qt5_defconfig
具体的名字要可以在搜索Buildtoot…文件下的以100ask_imx6ull开头的名字,找出所要make的defconfig文件。
4.make all
2.安装QT开发环境
2.1在ubuntu18.04
下安装QT开发环境:
sudo apt-get install cmake qt5-default qtcreator
如果在安装的过程中出现失败,请重新尝试apt-get update
后再进行重新安装,不然的话就更新源吧!安装完毕以后,在终端敲qt然后按Tab键就可以看到qt已经成功被安装到系统里了:
2.2配置交叉编译环境
2.2.1配置交叉编译环境
点击工具 ->选项 ->编译器。然后分别给Manual的c和c++ 添加编译工具。这部分直接用百问网提供的交叉编译工具就可以啦,这是我的路径。在弹出的对话框中填写以下内容: Compiler path , Make path 和 ABI;填写完成后,点击 Apply进行保存。
2.3添加 QT 版本:
在执行“make 100ask_imx6ull_mini_ddr512m_systemV_qt5_defconfig”配置后,再执行“make all”可以编译出 QT 的 SDK 包。可以在/home/用户名/100ask_imx6ull-sdk 下执行这个命令找到 qmake,记住它的目录:find -name qmake
在 QT 设置界面中,选择 Qt Version 标签,在右侧点击“Add…”,会弹出对话框,切换目录到选择 qmake 文件后,点击 open 按钮,设置完成之后,点击Apply按钮保存。
**注意:**qmake 文件是 buil1droot 编译根文件系统后生成的,文件在 buildroot目录下,可以通过搜索qmake来找出。
2.3kits选择
继续选择上边的 Kits 标签,点击右侧 Add,填写相应内容:
1.Name:输入 100ask_imx6ull
2.Sysroot:输入交叉编译工具链的目录
3.compiler:c 和 c++这两个选择框里,都选择 custom,这个custom是2.2.1节编译器里面添加c和c++的命名。
4.Debugger:选择 None
5.Qtversio:选择上图中配置的“Qt5.12.8 (host) ”,这个host根据实际情况选择。
配置完成后点击 apply,点击 OK。
3创建 Helloworld 项目
3.1 新建项目:
运行 QtCreator 后,在菜单栏选择 File -> New File or Project
第2步 选择项目类型:在 打 开 的 对 话 框 中 , 依 次 选 择 Application -> Qt Widgets Application ,点击 Choose… , 如
下图所示:
3.2选择kit
创建项目的时候,可以两个都选,也就是为不同的Kit设定不同的条件编译。作用是:既可以选择在X86架构上编译出UI界面,也可以选择ARM结构编译。在选择arm架构的kit编译时,UI界面不显示,只有选择X86的kit才显示。选择两种,可以现在X86架构的kit下开发完界面,再选择arm架构的kit下编译生成开发板可以执行的文件。方便UI开发。
3.3编译 Qt 程序
在qt界面的左侧栏,点击项目显示下列界面,这里面选择不同的kit编译。
不同kit下的生成文件如下
将可执行文件移植到开发板里面执行命令: ./untitled1 即可成功显示界面。
ARM开发板QT Linux Tftp命令使用详解
下载文件:tftp -l /mnt/untitled1 -r untitled1 -g 192.168.5.11
上传文件:tftp -l /mnt/untitled1 -r untitled1 -p 192.168.5.11
使用命令
tftp [OPTION]... HOST [PORT]
Options:
-l 是local的缩写,后跟本地或下载到本地后重命名的文件名。
-r 是remote的缩写,后跟远程即PC机tftp服务器根目录中的文件名,或上传到PC机后重命名后的文件名。
-g 是get的缩写,下载文件时用,后跟PC机的IP地址
-p 是put的缩写,上传文件时用,后跟PC机的IP地址。
tftp 默认占用的是69端口
使用以下命令运行程序:
chmod +x untitled1
./untitled1
tftp的配置可以参考之前文章《网络操作命令nfs命令》