PDA

View Full Version : Qt4.6.0 release cross compiling error



favor
22nd December 2009, 01:58
Hi,

I am crossing compile Qt4.6 for arm. my configure arguments like below:


./configure -prefix /opt -opensource -embedded arm -xplatform qws/linux-arm-g++ -nomake demo -nomake example -nomake docs -no-webkit -no-qt3support -phonon -phonon-backend -no-mmx -no-3dnow -no-sse -no-sse2 -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/ -L ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/lib -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/glib-2.0 -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/gstreamer-0.10 -I /home/user/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/libxml2/ -lglib-2.0 -lgthread-2.0 -lxml2 -v

at the end of configuration, I got:


SQLite support ...... plugin (qt)
OpenSSL support ..... yes (run-time)
alsa support ........ yes

Finding project files. Please wait...
Project MESSAGE: Unknown PROJECT: libsss
Project MESSAGE: Unknown PROJECT: libsss
782 projects found.

Creating makefiles. Please wait...

Qt is now configured for building. Just run 'make'.
Once everything is built, you must run 'make install'.
Qt will be installed into /opt

To reconfigure, run 'make confclean' and 'configure'.

it don't create any makefiles at all. so when I type "make", it does nothing. why did this happen? or what did I do wrong?

favor
23rd December 2009, 05:16
Hi, I don't know why above errors happened. but until I redo unpacking Qt sources package, and configure like below, it can read pro file and generate Makefiles. after then,
I can issue "make" to compile Qt.


./configure -prefix /opt -opensource -embedded arm -xplatform qws/linux-arm-g++ \ -no-qt3support -nomake docs -nomake examples -phonon -phonon-backend -no-webkit \ -no-mmx -no-3dnow -no-sse -no-sse2 -no-nis -no-cups -no-dbus -no-opengl \ -no-openvg -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/ \ -L ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/lib \ -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/glib-2.0 \ -I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/gstreamer-0.10 \
-I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/liboil-0.3 \
-I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/libxml2 \
-I ~/hd/OE/angstrom-dev/staging/armv7a-angstrom-linux-gnueabi/usr/include/glib-2.0 \
-lglib-2.0 -lgthread-2.0 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lxml2 -v

but these time, I got new problems. the compilation is stopped at errors:


You have not explicitly asked to use pkg-config and are cross-compiling.
pkg-config will not be used to automatically query cflag/lib parameters for
dependencies

/home/user/hd/qt-everywhere-opensource-src-4.6.0/bin/uic dialogs/qpagesetupwidget.ui -o .uic/release-shared-emb-arm/ui_qpagesetupwidget.h
make[1]: *** [.uic/release-shared-emb-arm/ui_qpagesetupwidget.h] Segmentation fault
make[1]: *** Deleting file `.uic/release-shared-emb-arm/ui_qpagesetupwidget.h'
make[1]: Leaving directory `/home/user/hd/qt-everywhere-opensource-src-4.6.0/src/gui'
make: *** [sub-gui-make_default-ordered] Error 2

I have two questions:

first, I don't set pkg-config when cross compiling, but I set -I, -L options instead. I want to know how to set pkg_config. does it should be set like this "export PKG_CONFIG_PATH=/path/to/dir/pkgconfig/" , and then, "./configure ..."? but it seems that didn't work. what did I do wrong?

the second, the building process is stopped by the uic segmentation fault. the uic generated can't create cpp source from Qt ui files. I checked it using "file uic", It shows that it's a x86 binary. I replaced it with local uic( from another qt for desktop x11), it can get through the errors. why? and what happened?

I really appreciate your help.

edmondo1984
8th March 2010, 08:55
I have been having the same problem,
and I am starting to believe UIC tool has problem when you compile it with threads.
If you, in fact, do not link towards a thread libraries (and you remove the packages which need threads)
to me the compilation works fine. But I have not found a solution to compile it with threads and succesfully


Any help would be highly appreciated

edmondo1984
10th March 2010, 12:55
I actually solved that, see another thread of mine.
http://www.qtcentre.org/threads/28746-QT-4-6-0-with-threads-UIC-segmentation-error?p=135799#post135799
Regards
Edmondo