• 4623阅读
  • 4回复

请教版主一个关于qtopia交叉编译的问题 [复制链接]

上一主题 下一主题
离线alphalzw
 

只看楼主 正序阅读 楼主  发表于: 2006-08-27
make[1]: Entering directory `/home/QTE_Sitsang/qtopia-free-1.7.0/src/applications/sysinfo'
arm-linux-g++ -L/home/QTE_Sitsang/qtopia-free-1.7.0/lib -Wl,-rpath,/home/QTE_Sitsang/qtopia-free-1.7.0/lib -L/home/QTE_Sitsang/qt-embeded-2.3.7/lib -Wl,-rpath,/home/QTE_Sitsang/qt-embeded-2.3.7/lib   -o /home/QTE_Sitsang/qtopia-free-1.7.0/bin/sysinfo .obj/linux-sitsang-g++//memory.o .obj/linux-sitsang-g++//graph.o .obj/linux-sitsang-g++//load.o .obj/linux-sitsang-g++//storage.o .obj/linux-sitsang-g++//versioninfo.o .obj/linux-sitsang-g++//sysinfo.o .obj/linux-sitsang-g++//main.o .obj/linux-sitsang-g++//moc_memory.o .obj/linux-sitsang-g++//moc_graph.o .obj/linux-sitsang-g++//moc_load.o .obj/linux-sitsang-g++//moc_storage.o .obj/linux-sitsang-g++//moc_versioninfo.o .obj/linux-sitsang-g++//moc_sysinfo.o -lqpe -lqtopia -lqte -lm -lts -ljpeg
/usr/local/arm-linux/bin/../lib/gcc-lib/arm-linux/3.2.1/../../../../arm-linux/bin/ld: warning: libuuid.so.1, needed by /home/QTE_Sitsang/qtopia-free-1.7.0/lib/libqtopia.so, not found (try using -rpath or -rpath-link)
/home/QTE_Sitsang/qtopia-free-1.7.0/lib/libqtopia.so: undefined reference to `uuid_generate'
collect2: ld returned 1 exit status
make[1]: *** [/home/QTE_Sitsang/qtopia-free-1.7.0/bin/sysinfo] Error 1
make[1]: Leaving directory `/home/QTE_Sitsang/qtopia-free-1.7.0/src/applications/sysinfo'
make: *** [applications/sysinfo] Error 2
在arm-linux-gcc的lib目录,qtopia的lib目录下都有这个库,这个库我是通过e2fsprogs-1.35.tar.gz编译获得的,而且我编译成的也是共享库
实在不知道是什么原因,请版主帮忙解决一下
[ 此贴被XChinux在2006-08-28 09:01重新编辑 ]
离线alphalzw

只看该作者 4楼 发表于: 2006-09-01
版主说的有道理
我显式连接的时候又出现了其他问题
/usr/local/arm-linux/bin/../lib/gcc-lib/arm-linux/3.2.1/libgcc.a(_udivsi3.oS)(.text+0x0): In function `__udivsi3':
: multiple definition of `__udivsi3'
/usr/local/arm-linux/bin/../lib/gcc-lib/arm-linux/3.2.1/libgcc.a(_divsi3.oS)(.text+0x0): In function `__divsi3':
: multiple definition of `__divsi3'
............
我换成2.95.3的编译器就可以了
我在网上找了一下资料,说是编译器不同,有时对库的链接的先后顺序的也不同
离线shiroki

只看该作者 3楼 发表于: 2006-08-30
你这个问题是因为你的qte没有链接上uuid, qte链接上uuid后面的库就不需要显式地再去链接一次了。
--
shiro is White
ki is tree
http://www.cuteqt.com
论坛 http://www.cuteqt.com/bbs
博客 http://www.cuteqt.com/blog
博客镜像: http://sites.cuteqt.com/cuteqt
Linux/Qt/嵌入式讨论群 http://qun.qq.com/air/5699823
离线alphalzw

只看该作者 2楼 发表于: 2006-08-28
如果只修改Makefile其他地方仍然会出现类似问题
所以最好的方法是在运行./configure时加入-lib -luuid参数
离线alphalzw

只看该作者 1楼 发表于: 2006-08-28
终于解决了
原来是qtopia.so库需要libuuid.so.1
只要修改sysinfo目录下的Makefile,在-lqtopia之前加上-luuid就可以通过了
快速回复
限100 字节
 
上一个 下一个