QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1081|回复: 0

交叉编译支持jpeg图像格式的qtopia-free-1.7

[复制链接]
发表于 2005-11-25 15:42:07 | 显示全部楼层 |阅读模式
arm-linux-2.95.3交叉编译支持jpeg图像格式的qtopia-free-1.7.0时出现错误:
首先建立目录armqtopia,在此目录下解压qt-x11-2.3.2.tar.gz, qt-embedded-2.3.7.tar.gz 和 qtopia-free-1.7.0.tar.gz ,得到三个目录,更名为qt-x11,qt,qtopia
然后设置:
export QTDIR=$PWD/qt
export QPEDIR=$PWD/qtopia
export TMAKEDIR=$PWD/tmake
export TMAKEPATH=$TMAKEDIR/lib/qws/linux-arm-g++
export PATH=$QTDIR/bin:$QPEDIR/bin:$TMAKEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/bin:$LD_LIBRARY_PATH

进入qt-x11目录,进行如下操作:
export QTDIR=$PWD
./configure -system-jpeg -thread -no-xft -no-opengl -sm
make
make -C src/moc
cp src/moc/moc bin
make -C src
make -C tools/designer
make -C tools/qvfb
cp tools/qvfb/qvfb bin
strip bin/uic bin/moc bin/designer bin/qvfb
然后回到armqtopia目录,将qt-x11得到的uic,moc,designer,qvfb拷贝到qt目录的bin下
cd ..
cp -f qt-x11/bin/?* qt/bin

将jpeg库交叉编译,然后拷贝到qt/lib下.
进入qt目录,进行配置,然后make
cd qt
cp ../qtopia/src/qt/qconfig-qpe.h src/tools/
./configure -system-jpeg -qconfig qpe -depths 16,24,32 -xplatform linux-arm-g++ -thread -I$QTDIR/include -L$QTDIR/lib
make可以通过
然后对qtopia进行配置和编译:
cd qtopia/src
./configure -xplatform linux-arm-g++
make出现错误
错误信息为:
make -C libraries/qtopia
make[1]: Entering directory `/faback/armqtopia/qtopia/src/libraries/qtopia'
/faback/armqtopia/qt/bin/uic passwordbase_p.ui -o ./passwordbase_p.h
/faback/armqtopia/qt/bin/uic: error while loading shared libraries: /faback/armqtopia/qt/lib/libjpeg.so.62: ELF file OS ABI invalid
make[1]: *** [passwordbase_p.h] Error 127
make[1]: Leaving directory `/faback/armqtopia/qtopia/src/libraries/qtopia'
make: *** [libraries/qtopia] Error 2
看来是jpeg库格式与宿主机不兼容, 将linux的jpeg库和头文件拷贝到qt/lib和qt/include路径下, 重新make qtopia时又出现错误:
make -C server
make[1]: Entering directory `/faback/armqtopia/qtopia/src/server'
arm-linux-gcc -L/faback/armqtopia/qtopia/lib -Wl,-rpath,/faback/armqtopia/qtopia
/lib -L/faback/armqtopia/qt/lib -Wl,-rpath,/faback/armqtopia/qt/lib -o /faback
/armqtopia/qtopia/bin/qpe .obj/linux-arm-g++//server.o .obj/linux-arm-g++//serve
rinterface.o .obj/linux-arm-g++//launchertab.o .obj/linux-arm-g++//documentlist.
o .obj/linux-arm-g++//suspendmonitor.o .obj/linux-arm-g++//appicons.o .obj/linux
-arm-g++//taskbar.o .obj/linux-arm-g++//runningappbar.o .obj/linux-arm-g++//appl
auncher.o .obj/linux-arm-g++//stabmon.o .obj/linux-arm-g++//inputmethods.o .obj/
linux-arm-g++//systray.o .obj/linux-arm-g++//wait.o .obj/linux-arm-g++//shutdown
impl.o .obj/linux-arm-g++//launcher.o .obj/linux-arm-g++//launcherview.o .obj/li
nux-arm-g++//calibrate.o .obj/linux-arm-g++//transferserver.o .obj/linux-arm-g++
//packageslave.o .obj/linux-arm-g++//irserver.o .obj/linux-arm-g++//qcopbridge.o
.obj/linux-arm-g++//startmenu.o .obj/linux-arm-g++//main.o .obj/linux-arm-g++//
firstuse.o .obj/linux-arm-g++//base64.o .obj/linux-arm-g++//buf.o .obj/linux-arm
-g++//checksum.o .obj/linux-arm-g++//command.o .obj/linux-arm-g++//delta.o .obj/
linux-arm-g++//emit.o .obj/linux-arm-g++//hex.o .obj/linux-arm-g++//job.o .obj/l
inux-arm-g++//mdfour.o .obj/linux-arm-g++//mksum.o .obj/linux-arm-g++//msg.o .ob
j/linux-arm-g++//netint.o .obj/linux-arm-g++//patch.o .obj/linux-arm-g++//protot
ab.o .obj/linux-arm-g++//readsums.o .obj/linux-arm-g++//scoop.o .obj/linux-arm-g
++//search.o .obj/linux-arm-g++//stats.o .obj/linux-arm-g++//stream.o .obj/linux
-arm-g++//sumset.o .obj/linux-arm-g++//trace.o .obj/linux-arm-g++//tube.o .obj/l
inux-arm-g++//util.o .obj/linux-arm-g++//version.o .obj/linux-arm-g++//whole.o .
obj/linux-arm-g++//qrsync.o .obj/linux-arm-g++//syncdialog.o .obj/linux-arm-g++/
/serverapp.o .obj/linux-arm-g++//shutdown.o .obj/linux-arm-g++//moc_server.o .ob
j/linux-arm-g++//moc_launchertab.o .obj/linux-arm-g++//moc_documentlist.o .obj/l
inux-arm-g++//moc_suspendmonitor.o .obj/linux-arm-g++//moc_appicons.o .obj/linux
-arm-g++//moc_taskbar.o .obj/linux-arm-g++//moc_runningappbar.o .obj/linux-arm-g
++//moc_applauncher.o .obj/linux-arm-g++//moc_inputmethods.o .obj/linux-arm-g++/
/moc_systray.o .obj/linux-arm-g++//moc_shutdownimpl.o .obj/linux-arm-g++//moc_la
uncher.o .obj/linux-arm-g++//moc_launcherview.o .obj/linux-arm-g++//moc_calibrat
e.o .obj/linux-arm-g++//moc_startmenu.o .obj/linux-arm-g++//moc_transferserver.o
.obj/linux-arm-g++//moc_qcopbridge.o .obj/linux-arm-g++//moc_packageslave.o .ob
j/linux-arm-g++//moc_irserver.o .obj/linux-arm-g++//moc_firstuse.o .obj/linux-ar
m-g++//moc_syncdialog.o .obj/linux-arm-g++//moc_serverapp.o .obj/linux-arm-g++//
moc_shutdown.o -ljpeg -Wl,-Bstatic -Wl,-whole-archive -Wl,-no-whole-archive -W
l,-Bdynamic -lcrypt -luuid -lqpe -lqtopia -lqte -lm
/faback/armqtopia/qt/lib/libjpeg.so: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[1]: *** [/faback/armqtopia/qtopia/bin/qpe] Error 1
make[1]: Leaving directory `/faback/armqtopia/qtopia/src/server'
make: *** [server] Error 2
请问究竟如何解决呢? 多谢各位
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-23 19:22 , Processed in 0.041095 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表