现在大多数开发板都是 linux 系统的,基于 linux 系统的图形编程,应该还是 Qt 用的比较多。最近试用 栗子开发板_TI5708,除了见识到 TI-SDK 的强大,TI 还有很多其他的很多 TI 独有的东西,TI 也算是个有内涵的公司吧,哈哈......
栗子开发板_TI5708 基于 TI am5708 芯片的,这是棵异构多核心的SOC芯片,芯片中有一颗 arm cortex a15 核心,嵌入式 linux 系统就运行在这个核心上,下面就是写一下基于 arm 核心的嵌入式 Qt 开发环境搭建,这个方法同样适用于其他 arm linux 开发板 Qt 开发环境搭建。搭建需要:
1,先安装 TI-SDK,里面集成有 Qt 库,头文件,编译器。这些是一个开发环境必须的。如果是其他板子就安装其他板子的编译器
2,配置 Qt 开发环境里面,让 Qt 使用交叉编译器编译出来 arm linux 上可以运行的程序。
3,如果需要的话可以配置一下开发板设备,编译之后 Qt 通过 sftp 协议把交叉编译后的程序推送到开发板,运行。这一步可以用 U 盘复制替代也行,不是必须
安装 TI-SDK,下载 TI 官网的 sdk,sdk 是 bin 软件包的形式,所以下载后直接修改执行权限,chmod u+x,运行./ti-processer-xxxxxxx. 然后会出来一个安装界面,一路下一步完成就完了。只用到了 Qt 交叉编译工具,没有使用 am5708 完整的开发环境,TI-SDK 安装完成了。
安装 Qt 开发环境,这个过程其实是安装 x86 电脑上的 Qt 开发环境,之后电脑通过交叉编译编译链接生成 arm linux 可运行的程序。
下载 Qt 软件包,也是 bin 软件包的形式,在这个网站下载 5.7.1 版本:http://download.qt.io/archive/qt/
修改可执行权限,运行,完全和 TI-SDK 安装方法一样:
然后就可以运行 Qt 开发环境详细配置了,因为 TI-SDK 编译器依赖一些变量,所以 Qt 运行之前需要首先加载这些变量,加载了变量后,在同一个shell中开启 Qt 程序,这样才能生效,我是通过一个脚本记载环境变量并启动 Qt 程序:
运行这个脚本后 Qt 程序打开了,通过菜单的 tools -》 option 配置开发环境:
打开 build run 的 qt version 标签:这里主要是 qmake 的定位,选择 Qt 开发环境自带的 qmake 程序
接着配置 交叉编译工具链:就是 arm gcc 和 arm g++,应该是用一个就够了,不知道的话全部都配置,如下图,要选 TI-SDK 中提供的:
接着配置 debugger ,选在 arm-gdb,这个也是 TI-SDK 中提供的
然后选 cmake:也是 TI-SDK 中提供的
然后回头打开 Qt kits ,这个 kit 就是个完整的开发环境全家桶:
需要手动新建一个 am5708 kit ,然后下面的交叉编译工具链 gcc gdb ,cmake tools, 都选择刚刚配置好的, device ,device type 都选一下,Qt mkspec 需要手工添加进去,最后的 cmake configure 需要打开复位一下, 我的这个里面是乱七八糟的。
到此一个完整的 嵌入式 Qt 开发环境搭建 完成了,以上配置的只能编译 arm linxu 上运行的程序,用以上同样的方法配置/检查一下 x86 的开发环境。
现在开始创建项目,通过菜单 file -》 new file and project 创建:
然后打开项目就可以填写自己代码了,点 build run 其实应该是可以运行的,最好点这个 project 再确认一下 build 和 run 的目录,命令等:
Qt 在开发阶段,也就是创建完工程后,写代码的时候,不需要区分 x86 还是 arm 环境,一套代码就可以。现在这个是编译运行的配置,x86 和 arm 环境的都要确认,两个环境以后不同了,生成的中间文件目录和最终文件都是不同的。
自己试试写个 hello world 电脑运行一下,然后交叉编译,把目标文件复制到 arm 开发板,再试试是不是可以运行。
原创作品,未经权利人授权禁止转载。详情见转载须知。 举报文章
我要举报该内容理由
×