Chinaunix首页 | 论坛 | 博客
  • 博客访问: 193965
  • 博文数量: 67
  • 博客积分: 3415
  • 博客等级: 中校
  • 技术积分: 860
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-27 17:05
文章分类

全部博文(67)

文章存档

2010年(64)

2009年(3)

我的朋友

分类: LINUX

2010-02-01 15:43:42

以下是唯一一篇相关论文:
%5F%C4%FE%BE%B2%D6%C2%D4%B6/blog/item/ad8e3cdfa76eba50cdbf1a19.html
本文是我在安装QT的时候的一点过程及经验总结,希望能给后来人一点启示。但是本人也是刚刚开始学习QT,所以有不正确的还请大虾们指出,我一定会认真改正的。谢谢。

先让我抒发一下安装上qt的喜悦,哈哈。

从开始看qt到成功的安装上qt,中间过了差不多6 7天吧,有3 4 5天是一直在编译,然后失败,当时用的是虚拟机,速度太慢了,差不多要编译3个小时吧,更是郁闷的不行,后来因为使用虚拟机的时候我切换太快了导致CPU 处理出现问题,一时处理不过来罢工了,CPU罢工不要紧,CPU保护导致显卡温度过高,finally,显卡烧了。

显卡烧了得换阿,不过也是因此耽搁了2天。这还得了,时间这么宝贵的资源岂能浪费,于是在换好显卡后就不用虚拟己了,又换上了双系统。(我的笔记本是戴尔的,呵呵,戴尔的服务就是快,今天报明天就来了,还行,赞一个)

好了,喜悦就抒发到此为止,下面讲我的安装心得及经验。

***********************************************************************************************

首先讲一下我对QT各个版本的理解。

qtopia是基于qte的一个图形界面。
qte是qt针对嵌入式系统作的一套软件,具体的定义肯定不是这样的,但是大家可以在网上搜到,我也就不详细讲了,我的理解就是

qtopia是qte函数的可视化界面。我的理解不一定是正确的,但是目前我掌握的资料导致了我的这个想法,欢迎大家提供新的资料让我改变这个想法。

现在用的最多的是qtopia是2.2.0这个版本,后来公司被Nokia收购后好像又有了什么变化,具体怎样我也搞不清,如果有人有相关的文档,还希望能提供一份,先在此谢谢了。

因为搞不清qtopia和QTE最新版本之间的联系,所以无奈之下我用的qtopia2.2.0。(为什么无奈呢,因为我认为新版本肯定是想着更新以前的bug或者其他的错误而推出的,所以会比以前好,因为那些程序员都不是傻子,不会推出认为不好的产品的。因此我尽量使用
较新的版本,既然用不了,那就算了吧)


通过安装Qtopia我的一点收获是:

1、要有信心
2、时刻留意Linux系统中权限的问题。
3、要大胆的修改源代码。



网上很多讲qtopia安装的文章,而且qtopia2.2.0出来这么长的时间了,应该很完善了才对,怎么会还有这么多错误呢。

那是因为 不同的开发环境编译会出现不同的问题。 关键在于编译器,是编译器的问题(我不是计算机专业的,编译原理也没有学过,关于此的相关事情我讲不了太多,能做到会用我就很开心了,呵呵)。不过出了错 误可以根据错误代码一行一行的修改源代码,这是韦东山教给我的经验。

考虑到作为《嵌入式Linux应用开发完全手册》的读者,我打算用韦东山提供的代码进行安装。

韦东山代码的要求配置:
主机系统:Ubuntu 7.10
编译器版本:gcc/g++ 4.1.3;arm-linux-gcc/g++3.4.5
交叉编译器自带的库:glibc-2.3.6

但是我的主机是 ubuntu 8.04的版本

赌一把,完全按照书上讲的做了后,结果是不成功。

晕...

我想难道是操作系统的问题?我猜想不可能阿,于是我开始对照错误修改源代码。

具体的错误代码我也记不请了,我就把具体意思大概说一下。

找不到 qt2/bin/uic 文件

我网上找了一下,找到个能用的,放进去重新make,进行到一半,又失败了,说是哪找不到 类名:: (具体的名字我忘了)

因为新的编译器会认为 类名:: 来修饰成员函数是不正确的,因此将相关的代码删掉了,现在报错估计是调用了又去找了,我删了怎么会能找到了。我看了一下原来是qtopia/src /games下的文件,我想反正不用games,我就把相关文件删掉了,删掉还不行阿,还要把调用的相关代码也删掉。找了一下在 qtopia/src/project.pro中,删掉就ok了。

make,又报错了,提示 multiple target patterns 。天哪...相关的这个文件是根据依赖关系自动生成的,这个系统太大了,我找了半天网上也搜索相关的资料,还是不行。

于是决定放弃韦东山的这个版本。对友善还是有信心的,我再去使用一下友善的代码,看看能不能成功,因为在装韦东山的代码的时候我想到了一开始为什么我用友善的代码出错误了,那就是
权限的问题。

好那开始使用友善的最新代码。

也许韦东山的这个版本有点问题吧,我也不清楚,反正我没成功,我没那么多时间重装了,就此作罢。不过通过安装韦东山的这个版本我更加深了一点:
要敢于修改源代码。虽然最终没解决问题,但是之前相关的问题都解决了。


之前使用友善的代码解压缩到/opt文件夹,文档要求用户使用fed9的系统,我想一个操作系统而已嘛, 有什么要紧。后来才发现,fed9是可以使用root帐户的。期间牵扯到很多权限的问题,而ubuntu 使用root权限的时候,环境变量也发生了变化,从而导致安装出现了问题。

建议:将相关的文件安装到/home下,并改变相应的权限,然后按照友善的提供文档就可以成功了。不过hello下的build脚本要相应的改变一下。

make
make install

后成功了,没有提示错误信息。但是我有点疑惑的是,网上有人说安装成功了出现了 enjoy ,但是我的没出现,难道还是错误的?希望不要,待会我用开发板验证一下。

现在回想,一个小小的问题困了这么多天,就是个权限的问题,哎...


另:缺少相关的库,及详细的配置信息怎么处理我就不写了,网上很多的,几乎没什么区别,大家可以看看。当然,最好是买本教材。


经过多次的实验,我发现问题仍然很多。自己的解决方法:
安装权限确实很重要,所以一定要在root用户下安装,而且要保证你的交叉编译工具是4。4。3。这时,肯定会设计到你的交叉编译工具链不能用(只要是ubuntu)
解决方法:1.sudo -s
        2.export PTAH=$PATH:/usr/local/arm/4.3.2/bin
        3.解压x86和arm到你想安装的文件位置
        4.进入x86执行./build-all一般不绘出问题。执行./run看到界面。ok!
        5.进arm执行./build然后就行了。此时你的arm交叉编译工具成功了
        6.作者没成功编译浏览器(就是kong文件)而且不是很需要。这样的编译就够用了。尝试一下,进入hello文件夹执行./build编译没有人和错误。ok!

注意在使用的时候如果你用的ubuntu。那么每次你都要设置你的编译起路径,就是export PTAH=$PATH:/usr/local/arm/4.3.2/bin其中哦个export意思是在当前用户设置路径。就是你用超级用户。还有一个办法,把arm-linux-gcc拷贝到bin目录下。(后者不建议使用)
阅读(1100) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~