主题 : micro2440下运行qt4中的demos程序 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 40469
精华: 0
发帖: 19
金钱: 100 两
威望: 20 点
综合积分: 38 分
注册时间: 2011-03-18
最后登录: 2017-09-13
楼主  发表于: 2011-04-21 15:57

 micro2440下运行qt4中的demos程序

本人菜鸟所以混迹在各个版块,由于初学嵌入式,若有错误地方,请指正,谢谢!          
由于最近要移植一个FTP程序,而程序的界面是用QT4画的,所以就把QT4的移植做了下。说说我移植的思想:由于是用QT4画的界面,为了更好的体验QT4,所以把QT4的环境也移植到micro2440,与其说是程序的移植,更直接的说是环境的移植。友善光盘中用的是qtopia2.2的,所以本文是在这个基础上改的。

需要工具及软件资源:1.光盘中自带的super-vivi-128m, zImage_T35, root_qtopia_128m.img2.qt-everywhere-opensource-src-4.7.2.tar.gz(版本还比较新)

准备工作:1.要把开发环境搭建好(搭建方法,见置顶帖子 Fedora12下搭建Qt Creator的ARM开发环境 并 移植Qt4.6.2到Micro2440(一))
2.tslib要安装上3.把光盘中的那三个文件烧到板子上


         正式开始:
1.用终端连上板子,我用的是minicom。然后,设置IP,并且把主机上NFS文件挂载到板子上。我的主机是192.168.2.2的IP,板子用192.168.2.10。(记得主机要把NFS服务开启了)ifconfig eth0 192.168.2.10mount -t nfs -o nolock 192.168.2.2:/opt/armnfs /mnt/

2.拷贝必须文件在这一步里,再安装一遍qt,方法就和帖子中安装嵌入式arm版的方法一样,不同的是路径要改为/opt/Qt4.7下面是配置选项,之后就是gmake, sudo gmake install,期间你可以稍休息下了。至于tslib不用再装了,只需要指定目录即可,我的在/opt/tslib下。为了方便,我直接写了个把配置写到shell文件中了,大家也节省时间。下载后,先重命名,然后执行就可以了。

首先要拷贝的是Qt4.7目录等安装后你会发现,/opt/Qt4.7中的文件和你原来安装的QtEmbedded-4.7.2-arm是一样的,我们这个做只是为了更明白些,等你做第二遍的时候,你就会明白了。你要把/opt/Qt4.7这个目录拷贝到NFS文件夹中sudo cp -R /opt/Qt4.7 /opt/armnfs

然后在板子的控制台终端中将/mnt中的Qt4.7这个文件夹移动到/opt下,注意这个地方目录要准确,不可随意更改。我们之前已经把主机的/opt/armnfs挂载到了板子的/mnt下了cd /mntmv Qt4.7 /opt/

然后拷贝的是tslib目录我的tslib目录在/opt下,所以先将tslib拷贝到armnfs文件夹中, cd /opt/armnfssudo cp -R /opt/tslib .

和前面的的一样,也是在板子的终端中把tslib移动到板子的/usr/local中mv /mnt/tslib /usr/local

3.使触摸屏生效修改板子上的/usr/local/tslib/etc/ts.conf文件,将第二行的“#”号和空格删除

4.设置板子的运行环境下面就是添加板子的环境变量,让QT4程序能用触摸屏。[方法有两种:第一种,把下面的代码添加到/etc/profile中即可[font=]第二种,写一个SHELL文件,然后把代码放进去,这个只要加载这个文件即可
记得检查相应的目录,如果你和我的一样,那就没问题了。export set TSLIB_ROOT=/usr/local/tslibexport set TSLIB_CONSOLEDEVICE=noneexport set TSLIB_FBDEVICE=/dev/fb0export set TSLIB_TSDEVICE=/dev/input/event0export set TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/tsexport set TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.confexport set POINTERCAL_FILE=/etc/pointercalexport set TSLIB_CALIBFILE=/etc/pointercalexport set QWS_MOUSE_PROTO="Tslib:/dev/input/event0"export set QWS_DISPLAY="LinuxFb:/dev/fb0"export set QWS_SIZE=320*240export set LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

添加完后,要看看变量生效了没,用env命令即可!

5.校准屏幕
cd /usr/local/tslib/bin./ts_calibrate
按照上面的命令操作,你应该能看见板子的屏幕上有校准的十字标

6.体验QT4的demos程序
做到这里,我们有理由要休息一下。所以,你要把做的就是把qtopia的服务给结束掉。结束方法是,点击qtopia2.2“设置”下的“关机”按钮然后再点击“Terminate Server”按钮。下面来体验下demos中的fluidlauncher程序,至于为什么是这个程序,因为我喜欢呗!  
cd /opt/Qt.4.7/demos//embedded/fluidlauncher./fluidlauncher -qws
这时候,你会看见华丽丽的东东,至于是什么,自己慢慢欣赏吧!发现这个编辑器的代码功能,真不是盖的,还不如手动添加呢  
[ 此帖被blackrose在2011-04-21 19:47重新编辑 ]
级别: 新手上路
UID: 40469
精华: 0
发帖: 19
金钱: 100 两
威望: 20 点
综合积分: 38 分
注册时间: 2011-03-18
最后登录: 2017-09-13
1楼  发表于: 2011-04-21 15:58
额,排版了半天,结果,还是悲剧了 ,唉
级别: 新手上路
UID: 21580
精华: 0
发帖: 24
金钱: 120 两
威望: 24 点
综合积分: 48 分
注册时间: 2010-05-18
最后登录: 2015-08-02
2楼  发表于: 2011-04-27 19:05
没有图片吗?            
级别: 新手上路
UID: 36936
精华: 0
发帖: 22
金钱: 110 两
威望: 22 点
综合积分: 44 分
注册时间: 2011-01-24
最后登录: 2013-01-30
3楼  发表于: 2011-05-02 20:43
楼主的环境是怎样的,用的哪个版本的编译器啊,为啥我gmake老是出错啊
级别: 新手上路
UID: 40469
精华: 0
发帖: 19
金钱: 100 两
威望: 20 点
综合积分: 38 分
注册时间: 2011-03-18
最后登录: 2017-09-13
4楼  发表于: 2011-06-30 00:00

 回 3楼(sunshineyy) 的帖子

我的系统是Fedora13,gcc 4.4.5,arm-linux-gcc 4.3.2的,arm-linux是micro2440光盘带的,把错误贴出来看看