1 | 综合篇 | 点我 |
---|---|---|
2 | uboot移植 | 点我 |
3 | uboot lcd驱动 | 点我 |
4 | kernel移植 | 点我 |
5 | kernel lcd驱动 | 点我 |
6 | 摄像头驱动 | 点我 |
7 | ubuntu base移植 | 点我 |
8 | 挂载网络文件系统 | 点我 |
9 | qt移植 | 点我 |
10 | 搭建qt交叉编译 | 点我 |
11 | wifi移植 | 点我 |
1 获取Qt
2 安装Qt
下载好之后将文件拷贝到ubuntu的/opt下
2.1 安装Qt之前需安装好g++
sudo apt-get install aptitude
#aptitude比apt-get强大,因为它会自动搜索被下载软件的依赖包,然后
#并把它们一起下载下来;
sudo aptitude install g++
注意,第一个弹出来的选项选n
第二个才选y
2.2 安装ssh
ssh是一种远程登录控制台的工具,也就是可以通过网络登录设备的控制台;
同样作用的工具还有telnet,
telnet和ssh的区别:
telnet是明文传输,ssh加密传输;
sudo apt-get install ssh
2.3 安装libgl
安装libgl,否则在ubuntu执行qt时会提示: can’t not find -lGL
sudo apt-get install libgl1-mesa-dev
2.4 安装qt
sudo ./qt-opensource-linux-x64-5.11.1.run
安装完成之后点击ubuntu(笔者使用的是ubuntu20.04)左下角的图标
搜索qt即可找到qt
3 搭建交叉编译
3.1 添加arm-linux-gnueabihf-gcc工具链
选择工具链,添加arm-linux-gnueabihf-gcc
按照同样步骤添加arm-linux-gnueabihf-g++
添加arm-linux-gnueabihf-gdb
3.2 添加qmake
添加交叉编译好的qmake,qmake的编译步骤参考这篇文章
3.3 开发板中安装ssh
这里使用的ubuntu的文件系统,可以直接安装ssh,如果是busybox可参考这篇文章
sudo apt-get install ssh
修改配置文件,允许密码登录
vi /etc/ssh/sshd_config
将PasswordAuthentication的#号删除
将PermitRootLogin修改为yes,允许root登录
重启ssh服务
service ssh restart
3.4 添加设备
选择Devices,添加通用Linux设备
输入ip,用户名(要使用root)和密码后点击Next
点击Finish
测试通过
3.5 构建套件
选择Kits->Add
设备类型选择Linux通用设备
设备选择前面添加的设备
c工具链选择前面添加的imx6ull-gcc
c++工具链选择卡面添加的imx6ull-g++
Debugger选择前面添加的imx6ull-gdb
Qt version选择前面添加的imx6ull-qt
添加完成后点击Apply
4 交叉编译
选择一个项目测试,这里选择的项目ui如图所示
先在Pc桌面运行看看效果
选择桌面套件
点击运行,运行成功后效果如图所示
现在选择imu6ll套件,让项目运行在开发板上
在pro文件中添加安装目录
target.path = /home/root
INSTALLS += target
选择imx6ull套件
点击运行,运行结果如图