主机用的是ubuntu-10.04.4版本的linux系统,目标板为TI的davinci dm368系列,qt程序是用qt creator4.6编写,使用TI提供的dm368的dvsdk自带的交叉编译环境,在dvsdk目录下输入make demos命令交叉编译生成二进制可执行文件,本文主要记录把二进制文件移植到开发板并测试通过的流程
从你虚拟机里编译安装arm版的QT库里面拷!qt库存放在dvsdk下的根文件系统下的usr/lib目录下
如果不嫌麻烦可以使用tftp一个一个文件的来移植,例如要移植libQtGui.so.4文件,配置好tftp服务器后只需在串口工具中输入tftp –g –r libQtGui.so.4 192.168.0.230即可,这样非常麻烦,也不知道具体需要移植哪几个库文件,我便摒弃了这种方法,使用了通过nfs挂载主机目录到开发板方式挂接qt库
挂载之前我把usr文件夹单独拷贝到了/home目录下
挂载过程:
1)以root用户登录,在主机终端中输入gedit /etc/exports
2)在弹出的文本编辑器中编辑exports文件,在最后一行添加:
/home/usr *(rw,sync,no_root_squash)
3)重启NFS服务,输入service nfs-kernel-server start命令
4)在开发板上输入
mount -t nfs -o intr,nolock,rsize=1024,wsize=1024 192.168.0.230:/home/usr /mnt/local
在开发板上根目录执行vi /etc/profile命令,进入编辑模式后加入
1. export QTDIR=/mnt/local
2. export PATH=$QTDIR/bin:$PATH
3. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
保存退出即可
最后把编译好的二进制文件通过tftp移植到开发板。我的文件名为cc,输入./cc –qws
在连接到开发板的显示屏上即可看到ui界面了
如果上述步骤成功完成,在运行./cc -qws时一般会遇到的错误
QFontDatabase:Cannot find font directory /usr/ lib/fonts - is Qtinstalled correctly?
需要做的就是将/mnt/local/lib/fonts里的文件拷贝到开发板/usr/lib/fonts。
每次启动板子后都要重新输入
mount -t nfs -o intr,nolock,rsize=1024,wsize=1024 192.168.0.230:/home/usr /mnt/local
来实现主机目录的挂接
参考资料:
http://www.eefocus.com/wang312/blog/13-01/290787_7c9c3.html
http://mobile.51cto.com/symbian-269082.htm
http://blog.sina.com.cn/s/blog_6592a07a01014e5r.html