`
king_tt
  • 浏览: 2100475 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Ubuntu12.04下配置安装Qt4.6.3 及移植到mini2440开发板及其使用全过程

 
阅读更多

安装Qt真的很烦人,怎么那么久,得三四个小时,好吧,我承认自己电脑配置低了,尤其是安装交叉编译版本的,那家伙叫一个费劲,昨天安装了一天都没成功,晚上拿回去宿舍安装,早晨起来看,还是没有安好,不过现在弄好了,大致的记录一下自己的过程,不详细讲解了。

QT版本:qt-everywhere-opensource-src-4.6.3.tar.gz 自己去下就行了http://download.qt-project.org/archive/qt/4.6/

Tslib:tslib-1.4.tar.gz 点此下载

理解Qt版本

Qt是一个跨平台的开发工具,下面仅介绍两个版本:

● Linux/X11:用于 X Window System,支持KDevelop和Eclipse集成。它就是咱们在 linux 下用的版本。

● Embedded Linux:用于嵌入式Linux系统的版本,简称Qte。它可以通过编译移除不常使用的组件与功能。相对于 Linux 版的Qt,它不依赖X Lib而直接工作在Framebuffer上。它通过自己的视窗系统QWS,不需依赖 X Window System,直接写入Linux帧缓冲,可以减少存储器消耗,并提供虚拟帧缓冲QVFb,方便在桌面系统上进行嵌入式测试。

安装区别

我在看书的时候一直不懂一个问题,到底Linux/X11版本的qt和ARM版本的安装方法有什么区别啊?后来安装的时候才知道,区别不大,我们仅需要一个qt-everywhere-opensource-src-4.6.3.tar.gz 文件,需要安装两次,下面我会分别介绍。

安装 Linux/X11 版本的Qt

将qt-everywhere-opensource-src-4.6.3.tar.gz 下载下来存放在一个文件夹


执行命令:tar -zxf qt-everywhere-opensource-src-4.6.3.tar.gz 解压


执行命令:cd qt-everywhere-opensource-src-4.6.3/ 进去解压后的文件夹


执行命令:./configure 配置文件


会提示你选择一些选项,这里依次选择 o 、yes,回车继续。出现下图,告诉你接下来的步骤以及默认的安装路径/usr/local/Trolltech/Qt-4.6.3


接着执行命令:make ,编译,时间会很长的,等吧......我的电脑得用了三个多小时!

编译完成,再接着执行命令:make install ,再等吧,它按照咱们的默认安装目录安装,安装完成后,在 /usr/local 下产生文件夹Trolltech


接着配置环境变量:sudo vim /etc/profile


在该文件最后一行加上:export PATH=$PATH:/usr/local/Trolltech/Qt-4.6.3/bin


保存退出。执行命令:source /etc/profile


这时候,我们的安装已经完成了,在安装的时候可能会出现一些缺失xlib库的问题,一百度就行了。

现在利用自带的demo测试一下可不可以使用,进入/usr/local/Trolltech/Qt-4.6.3/demos/mainwindow ,执行命令:./mainwindow,出现下面的界面,安装没有问题


或者可以自己编写一个Hello World程序(这种程序网上很多),自己验证一下。

安装适合 ARM的Qt 版本

还是同样的qt-everywhere-opensource-src-4.6.3.tar.gz 压缩文件,我先把之前安装x11的文件夹删掉,如下


然后再执行命令:tar -xzf qt-everywhere-opensource-src-4.6.3.tar.gz解压


进入解压后的文件夹,执行命令:./configure -prefix /home/song/software/qt -embedded arm ,这里 -prefix 后面的是我打算安装的目录,书上的都是说指定 /usr/local/qt,但是我照书上的做法,不是 permission denied就是arm-linu-g++:not found,害得安了一夜都没安好!!这个目录你可以自己定。-embedded 后面说明的是咱们的安装版本是用来交叉编译用于arm的,不能变。

回车后,依次选择 o 、yes,过一段时间后,出现下图,提示你下一步的操作,可以看到,它安装的路径是咱们自己指定的路径


执行命令:make 编译,时间很长,等吧....

编译完成后,执行命令:make install 安装到咱们指定的路径。安装完成后,就会在我们指定的文件夹内生成如下文件


将安装好的 qt 文件夹拷贝至咱们的根文件系统的 /etc/local 目录下,如下


咱们再修改根目录下的 etc/profile 文件,添加Qte 的环境变量。在该文件中添加如下内容:

QTDIR=/usr/local/qt
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_FILE=/etc/pointercal
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0
export set QT_QWS_FONTDIR=$QTDIR/lib/fonts


这时候,关于qte移植到咱们的 s3c2440 板子上已经完成了,但是下面还要移植 tslib奥

安装并移植tslib

有关 tslib 的安装看这篇文章http://blog.csdn.net/mybelief321/article/details/9208199

下面介绍移植的步骤

首先,在咱们制作好的根文件系统 /usr/local目录下新建一个 tslib 文件夹,然后把安装好的目录内的所有文件都复制到这个文件夹内

cp -arf /home/song/software/mytslib/* ....../rootfs/usr/local/tslib/


修改根文件系统的 /etc/profile 配置文件,加入运行 tslib 的环境变量

export TSLIB_ROOT=/usr/local/tslib
export TSLIB_TSDEVICE=/dev/event0 (对应的触摸屏设备,根据实际情况修改)
export TSLIB_FBDEVICE=/dev/fb0 (对应的 frambuffer 设备)
export TSLIB_CALIBFILE=/etc/pointerrcal (触摸屏校正生成的文件,运行***/tslib/bin/ts_calibrate产生)
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CONSOLEDEVICE=none
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib


好了,现在可以利用nfs启动测试这个根文件系统了,关于nfs启动流程,请看:http://blog.csdn.net/mybelief321/article/details/9988767

测试

分别执行:sudo /etc/init.d/portmap restart重启portmap服务。nfs是一个RPC程序,使用它前,需要映射好端口,通过portmap设定。

sudo /etc/init.d/nfs-kernel-server restart重启nfs服务。

启动supervivi ,输入命令:param set linux_cmd_line "console=ttySAC0,115200n8 root=/dev/nfs nfsroot=211.64.20.161:/home/song/nfs/rootfs ip=211.64.20.167"


进入系统了

进入 /usr/local/tslib/bin,然后执行 ./ts_calibrate 校正触摸屏

校正完之后,再执行:./ts_test ,测试咱们的tslib

测试完 tslib 之后,再进入 /home 目录,这里有两个 QT 程序,任意执行一个,./mainwindow -qws


可以在开发板的屏上看到效果。

我把这部分的制作好的根文件系统,传上去,省得我以后弄丢了,点此下载

特别感谢启蒙文章!http://home.eeworld.com.cn/my/space-uid-173779-blogid-59535.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics