ltib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Ltib] Problems building qtopia-4


From: Stuart Hughes
Subject: Re: [Ltib] Problems building qtopia-4
Date: Wed, 04 Nov 2009 09:30:33 +0000
User-agent: Thunderbird 2.0.0.16 (X11/20080707)

Hi Peter,

Qtopia4 doesn't build fully on x86-64 hosts. As you probably have figured out the build for qtopia is quite horrendous. I fixed some of the issues, but I did not complete all the work (what was done is in CVS). Unfortunately I no longer have a 64 bit host to look at this. Looking at your output, /usr/bin/ld should not be call if building content for the target (I can't really tell if this is the case here).

I came to the conclusion when working on this that some libraries are built for the build (host) machine when they should have been built for the target. To get more debug output, you can set verbose_opt in qtopia/configure.


The last notes I have working on this are:

---------------

After removing redirect of stdout to /dev/null I see:

qtopia/src/games/fifteen
powerpc-linux-gnu-g++ -L /var/home/seh/ltib_bsps/5200/rootfs/usr/lib -o fifteen .obj/release-shared/fifteen.o .obj/release-shared/main.o .obj/release-shared/moc_fifteen.o -ljpeg -luuid -lqtopia2 -lqtopia -lqpe -L/var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qtopia/lib -L/var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qt2/lib -lqte /var/opt/freescale/usr/local/gcc-4.2.187-eglibc-2.5.187/powerpc-linux-gnu/bin/../lib/gcc/powerpc-linux-gnu/4.2.3/../../../../powerpc-linux-gnu/bin/ld: fifteen: hidden symbol `_restgpr_17_x' in /var/opt/freescale/usr/local/gcc-4.2.187-eglibc-2.5.187/powerpc-linux-gnu/bin/../lib/gcc/powerpc-linux-gnu/4.2.3/libgcc.a(crtresxgpr.o) is referenced by DSO /var/opt/freescale/usr/local/gcc-4.2.187-eglibc-2.5.187/powerpc-linux-gnu/bin/../lib/gcc/powerpc-linux-gnu/4.2.3/../../../../powerpc-linux-gnu/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status


Some libs are build for host:

/var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qtopia/lib/ is okay:
all powerpc:

/var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qt2/lib/ all bad:
$ find /var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qt2/lib/ -type f -exec file {} \; | grep x86 /var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qt2/lib/libqt.so.2.3.12: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), not stripped /var/home/seh/ltib_bsps/5200/rpm/BUILD/qtopia-free-2.2.0/qt2/lib/libqutil.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), not stripped

using a simple hellocpp I get this error linking:
 -ljpeg -luuid -lqtopia2 -lqtopia -lqpe -qte

This is induced by any of:
-lqtopia2 -lqtopia2 -lqpe

------------------

Regards, Stuart


Peter Barada wrote:
Now that I've upgraded my LTIB to the latest CVS release(checkout from savannah yesterday), I'm trying to build qtopia-4 for my OMAP platform using the CodeSourcery 4.3.3 (2009q1-203) compiler, and it fails. The rest of the build works fine.

One problem I ran into is that the 4.3.3 gcc compiler complained about:
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/qtopia-opensource-4.3.0/qtopiacore/qt/src/gui/painting/qdrawhelper.cpp:5737: error: explicit template specialization cannot have a storage class /home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/qtopia-opensource-4.3.0/qtopiacore/qt/src/gui/painting/qdrawhelper.cpp:5761: error: explicit template specialization cannot have a storage class

So I created a patch (attached) that removes the storage specification from the specialization and proceeded further with the build.

The full qtopia build log (26MB) can be found at http://www.baradas.org/stuff/ltib/qtopia-4-fail.txt

The failure itself is:

g++ -fno-exceptions -o 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/bin/content_installer
 .obj/release-shared/main.o .obj/release-shared/qtopiasql.o 
.obj/release-shared/qtopiasql_p.o .obj/release-shared/qtopialog.o 
.obj/release-shared/qlog.o .obj/release-shared/qcontentfilter.o 
.obj/release-shared/qcontent.o .obj/release-shared/qthumbnail.o 
.obj/release-shared/thumbnailview_p.o .obj/release-shared/qcontentset.o 
.obj/release-shared/qdrmcontent.o .obj/release-shared/qdrmrights.o 
.obj/release-shared/drmcontent_p.o .obj/release-shared/qcontentplugin.o 
.obj/release-shared/contentpluginmanager_p.o 
.obj/release-shared/qcategorymanager.o .obj/release-shared/qtopiaipcadaptor.o 
.obj/release-shared/qtopiaipcenvelope.o .obj/release-shared/qtopiachannel.o 
.obj/release-shared/qtopianamespace.o .obj/release-shared/qpluginmanager.o 
.obj/release-shared/qstorage.o .obj/release-shared/qmimetype.o 
.obj/release-shared/qtopias
ervices.o .obj/release-shared/qslotinvoker.o 
.obj/release-shared/qsignalintercepter.o .obj/release-shared/quniqueid.o 
.obj/release-shared/migrateengine.o .obj/release-shared/pimmigrate.o 
.obj/release-shared/phonemigrate.o .obj/release-shared/qcategorystore.o 
.obj/release-shared/qsqlcategorystore.o .obj/release-shared/qcontentengine.o 
.obj/release-shared/qfscontentengine.o .obj/release-shared/qcontentstore.o 
.obj/release-shared/qsqlcontentstore.o .obj/release-shared/qcontentsetengine.o 
.obj/release-shared/qmimetypedata.o .obj/release-shared/qcontentsortcriteria.o 
.obj/release-shared/qsqlcontentsetengine.o .obj/release-shared/sqlite3.o 
.obj/release-shared/moc_qtopiasql.o .obj/release-shared/moc_qtopiasql_p.o 
.obj/release-shared/moc_qtopialog.o .obj/release-shared/moc_qlog.o 
.obj/release-shared/moc_qcontentfilter.o .obj/release-shared/moc_qcontent.o 
.obj/release-shared/moc_qcontentset.o .obj/release-shared/moc_thumbnailview_p.o 
.obj/release-shared/moc_qdrmcontent.o .obj/release-
shared/moc_qdrmrights.o .obj/release-shared/moc_drmcontent_p.o 
.obj/release-shared/moc_qcontentplugin.o .obj/release-shared/moc_qthumbnail.o 
.obj/release-shared/moc_contentpluginmanager_p.o 
.obj/release-shared/moc_qcategorymanager.o 
.obj/release-shared/moc_qtopiaipcadaptor.o 
.obj/release-shared/moc_qtopiaipcenvelope.o 
.obj/release-shared/moc_qtopiachannel.o 
.obj/release-shared/moc_qtopianamespace.o 
.obj/release-shared/moc_qpluginmanager.o .obj/release-shared/moc_qstorage.o 
.obj/release-shared/moc_qmimetype.o .obj/release-shared/moc_qtopiaservices.o 
.obj/release-shared/moc_qslotinvoker.o 
.obj/release-shared/moc_qsignalintercepter.o 
.obj/release-shared/moc_quniqueid.o .obj/release-shared/moc_migrateengine.o 
.obj/release-shared/moc_pimmigrate.o .obj/release-shared/moc_phonemigrate.o 
.obj/release-shared/moc_qcategorystore_p.o 
.obj/release-shared/moc_qsqlcategorystore_p.o 
.obj/release-shared/moc_qcontentstore_p.o 
.obj/release-shared/moc_qsqlcontentstore_p.o .obj/release-shared/moc
_qcontentsetengine_p.o .obj/release-shared/moc_qmimetypedata_p.o 
.obj/release-shared/moc_qsqlcontentsetengine_p.o 
.obj/release-shared/moc_sqlite3.o .obj/release-shared/qrc_qtopia.o 
.obj/release-shared/qrc_qtopiapim.o .obj/release-shared/qrc_phonemigrate.o 
.obj/release-shared/qrc_pimmigrate.o    
-L/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/qtopiacore/host/lib
 
-L/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/lib/host
 -lQtSvg 
-L/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/qtopiacore/host/lib
 -pthread 
-L/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib
 -pthread -pthread -pthread -L/usr/X11R6/lib -pthread -pthread -pthread 
-pthread -pthread -pthread -lQtSql -pthread -pthread -lQtXml -pthread -pthread 
-lQtGui -lfreetype -pthrea
d -pthread -lXext -lX11 -lQtNetwork -pthread -pthread -lQtCore -lz -lm -pthread 
-lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread 
-Wl,-rpath,/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/qtopiacore/host/lib
 
-Wl,-rpath,/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/lib/host
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libz.so
 when searching for -lz
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libz.a
 when searching for -lz
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libgthread-2.0.so
 when searching for -lgthread-2.0
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/librt.so
 when searching for -lrt
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libglib-2.0.so
 when searching for -lglib-2.0
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libdl.so
 when searching for -ldl
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libpthread.so
 when searching for -lpthread
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libstdc++.so
 when searching for -lstdc++
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libm.so
 when searching for -lm
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libgcc_s.so
 when searching for -lgcc_s
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libpthread.so
 when searching for -lpthread
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libc.so
 when searching for -lc
/usr/bin/ld: skipping incompatible 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rootfs/usr/lib/libgcc_s.so
 when searching for -lgcc_s
make[6]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/src/tools/content_installer'
make[5]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/src/tools/content_installer'
make[4]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/src/tools/content_installer'
make[3]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build/src'
make[1]: *** [qtopia_all] Error 2
make[1]: Leaving directory 
`/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/rpm/BUILD/qtopia-4-4.3.0/build'
make: *** [all] Error 2
error: Bad exit status from 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/tmp/rpm-tmp.21167
 (%build)


RPM build errors:
    Bad exit status from 
/home/peter/work/logic/svn/eps_svn/software/products/linux/LTIB/trunk/ltib-20091102/tmp/rpm-tmp.21167
 (%build)
Build time for qtopia-4: 1175 seconds

Failed building qtopia-4


What is strange is that all the files in rpm/BUILD/qtopia-4-4.3.0/build/src/tools/content_installer/.obj/release-shared are "ELF 64-bit LSB releacatable ARM", but if I compile qrc_pimmigrate.o by hand in the ltib shell ("./ltib -m shell") using the compile line from the log (line 135256), ./obj/release-shared/qrc_pimmigrate.o is now "ELF 32-bit LSB relocatable, ARM" instead of the 64 bit.

My host is a x86_64 Quadcore i-720, so I'm wondering if qtopia is getting confused about the host/target and deciding the target is 64-bit, and somehow communicating that to the cross-compiler through the environment.

1) Anyone ever build qtopia-4 on an x86-64 machine for a 32-bit ARM environment?

2) Any suggestions on how to fix this?

Thanks in advance!

--
Peter Barada <address@hidden <mailto:address@hidden>>
Logic Product Development, Inc.


------------------------------------------------------------------------

_______________________________________________
LTIB home page: http://ltib.org

Ltib mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/ltib




reply via email to

[Prev in Thread] Current Thread [Next in Thread]