编译qtopia,找不到lqtopia,尝试数次不得!诚恳答案!另有特别问题,请高手赐教!
最近在PC上安装 qt交叉编译程序,目标是arm平台。版本如下:
qt-x11-2.3.2
qt-embeded-2.3.7
qtopia-1.7.0
tmake-1.11
e2fsprog-1.39
虽然过程中也出了很多问题,但经网友提示,都差不多解决了。但最后一个问题:
error:/usr/local/arm/2.95/bin/ld can't find lqtopia,搞了很长时间,编了很多次还是过不去,诚恳哪位编译成功过的朋友
给我指点一下,感激不尽。
我发现在编qtopia时,首先./configure -xplatform arm-linux-g++生成makefile后,make,过了一会儿,qtopia/lib下就会
生成一些库,其中有关qtopia的库我记得是这样:总共有三个,有二个是软链接,最后 一个是libqtopia.so.1.6.2,前二个
都链接到它。可是这三个文件都显示'X'标志,链接断开。我想不明白为什么会断开呢?
另外,在看了很多朋友博客和自己编译情况后,有几个疑惑,现在还没搞清楚:
1、编译e2fsprog时,configure选项到底要怎么写?要不要修改e2fsprog/lib/uuid下的Makefile。怎么发现很多朋友做法都
不一样,有的人这么做了,有的人没有。另外,编译完后,有的朋友复制libuuid.a,有的复制libuuid.so.*,有的复制uuid
整个文件夹到qtopia/include,而且复制到的目录有的是embed-2.3.7/lib,有的是qtopia/lib,有的是arm/2.95/arm-
linux/lib下。怎么就没有一个统一的?我觉得只要目的相同,很多工作都应该相同啊,有谁来告诉我怎样以最小代价,复
制最少的必需的文件就可保证编译qtopia没问题??
2、编qt-x11 时,有人只有一个"make sub-src",有人分开编,即make -C src;make -C tools/qvfb……,这我可理解,可最
后在复制一些可执行文件时,就显得不一样,有的人只复制uic到qt-embeded/bin,有的人把qvfb,moc,designer全复制了
。我想知道的是:到底该复制哪些?(可能有朋友觉得我钻了牛角尖,其实我是希望在做这种技术工作时,用最小代价去
编译成功,只复制与接下来编译有关联的文件,没关联的绝不复制!)
3、编译qtopia时,环境变量QTDIR到底是谁,是qtopia-1.7.0还是qt-2.3.7,很多朋友搞得就不一样,我就怀疑他们怎么
可能都编成功
4、make install到底要不要写?有些同志在每一个make后都写make install,有些朋友只在e2fsprog时,写上make install
lib/uuid,到底在编qt时,什么时候写它
可能会觉得我的某些问题问得很菜鸟,呵呵,没办法,在成为大虾之前,得演一下菜鸟的角色啊。。
希望有朋友帮忙解答一下,感谢。
[解决办法]
error:/usr/local/arm/2.95/bin/ld can't find lqtopia 找不到liblqtopia.so或者.a。感觉像是lz在写-lqtopia 时多写的个l。
arm的e2fsprog编译参数应该不是大问题,完成后的lib,放在哪里都可以,只要Makefile中-L 加入了那个位置就行 个人感觉不要放在arm/2.95/arm-linux/lib,以后编译器其他会有冲突。
QTDIR是qt不是qtopia
makeinstall是把你编译的结果提炼出来安装的某个值得的位置,应该是--prefix制定的那个,感觉最后执行下就可以