A-A+

米尔科技Rico Board试用笔记四——Qt开发环境搭建

2016年11月11日 电子世界 暂无评论

0 补充

   在使用Visual Box遇到无法桥接宿主机网络的难题后,我转向了VMWare阵营。目前已经搭建好了环境。之前讲过的内容就不重复了,这里说说之前没有试过的。

1 tftp服务的配置

TFTP是一种简单文件传输协议,实现不同主机间的文件发送和接收。这里,Ubuntu主机为服务器,开发板为客户端。

(1) 安装tftp服务器端,记得不要输错,有2个软件需要安装:

$sudo apt-get install tftp-hpa tftpd-hpa

(2) 创建tftp服务器的工作目录并配置权限

$mkdir /home/soda/myrico/tftpboot

$chmod 777 /home/soda/myrico/tftpboot

(3) 配置tftp服务器,这里可以检查一下之前的两个软件是否安装好,如果有以下配置文件的话:

$sudo vim /etc/default/tftpd-hpa

(4) 添加以下字段

TFTP_DIRECTORY="/home/soda/myrico/tftpboot"

TFTP_OPTION="-l -c -s"

(5) 重启TFTP服务

$sudo service tftpd-hpa restart

安装和配置已经做完,下面简单的测试以下,在之前建好的tftpboot目录下新建一个文件hello.txt。然后在开发板的终端中,输入

# tftp -l hello.txt -r /home/soda/myrico/tftpboot/hello.txt -g 192.168.1.134 69

Note: -l表示local,本地;-r,表示remote,远端;-g,get,从服务器中下载,后面是服务器的IP地址,69是端口号。这里注意远端的路径是绝对路径,不然会报错。

做完这些,就可以在目标板上看到下载的文件了。

(6) 开发板上传文件到Ubuntu主机

Ubuntu主机需要有该文件的存在,只能覆盖,不能添加,这个问题还需要解决;

2 NFS服务的配置

NFS,网络文件系统,允许主机通过网络实现文件共享,这样很方便进行文件传输。

(1)在开发主机上安装NFS服务程序;

$ sudo apt-get install nfs-kernel-server

(2)编辑export文件,添加nfs文件夹目录

$ sudo vi /etc/exports

例如我的就改为

/home/soda/myrico/nfs *(rw,subtree_check,no_root_squash,no_all,squash,sync)

(3)设置目录权限

$ chmod 777 -R /home/soda/myrico/nfs

(4)修改配置nfs,绑定端口

$ sudo vi /etc/default/nfs-kernel-server

将RPCMOUNTDOPTS修改为

#RPCMOUNTDOPTS=--manage-gids

RPCMOUNTDOPTS="-P 13100"

(5)重启NFS服务

$ sudo service nfs-kernel-server restart

在本机上测试NFS服务:

$ sudo mount -t nfs 127.0.0.0:1:/home/soda/myrico/nfs /mnt

在开发板上,使用ping命令测试开发板与PC机网络是否连通

# ping 192.168.1.134

在开发板上新建挂载目录

# mkdir -p /mnt/nfs

挂载NFS文件夹

# mount -t nfs -o nolock,rw 192.168.1.134:/home/soda/myrico/nfs /mnt/nfs

到了这里,NFS共享文件夹挂载成功,通过NFS共享文件夹可以方便的实现主机与开发板之间的文件共享,并且可以直接在共享文件夹下运行目标程序,免去了文件拷贝的操作。我觉得这个比TFTP更方便,简直就是太好用了。

3 Qt介绍

Qt是一个完整的C++应用程序开发框架,它包含一个类库,和用于跨平台开发和国际化的工具,Qt API在所有支持的平台上都是相同的,Qt工具在这些平台上的使用方式也一直,因而Qt应用的开发和部署与平台无关。简单来说,Qt可以用来给开发板开发GUI应用程序的。

一、准备工作

(1)根据用户手册安装好交叉编译工具,设置好环境变量;

(2)设置好开发板的网络环境,使开发板能正常进行网络通信。

二、使用光盘中提供的SDK

按照手册里的指导,依次进行以下步骤:

(1)解压编译好的tslib和Qt SDK到Ubuntu主机;

(2)配置Ubuntu的Qt编译环境;

(3)创建源文件,输入代码;

(4)编译。

按照手册里的指导,会出现一个错误,这个非常坑。

遇到这个问题,开始有些慌。后来仔细一看,路径不对啊,并没有出现/media/data/myir/am335x/qt4.8.5这个路径啊,应该是/opt/qt-4.8.5-sdk才对啊。于是打开Makefile文件,将所有的/media/data/myir/am335x/qt4.8.5路径替换为/opt/qt-4.8.5-sdk,这个错误不再报了,结果又出现一个新的错误。

这个新问题提示,找不到lts,开始走了不少弯路,耽误了很多时间,后来在另一个试用者的经验帖中找到了解决方案。应该是没有将tslib的路径加入编译路径中,因此在Makefile文件中将变量“LIBS”添加一条“-L /opt/tslib/lib”。再次编译,顺利通过,得到可执行文件“hellomyir”。

在开发板上执行文件./hellomyir,可以在LCD屏幕上显示,由于手里没有LCD显示屏,这里就不进行展示了。 这里还需要解决一个问题:关于qmake的配置,不然每次手动修改Makefile文件会特别麻烦。这里先留个彩蛋,下次再提解决方案吧。

4 小结

官方手册的不严谨导致多花了很多时间精力。特别是对一些新手来说,可能会对该开发板产生不好的印象。希望官方能够及时纠正这些问题,在以后的手册中更加仔细认真。此款开发板毕竟不同于AM335X系列,有些地方还是需要进行修改的。

下一期,准备尝试用Qt Creator IDE来写应用程序。

标签:

Copyright © E网新时代 保留所有权利.   Theme  Ality站点地图
查询次数: 23
粤ICP备14073293号-1

用户登录

分享到: