Question

I have a problem running QT 5.2.1 applications on linux embedded (all of them, even the simplest "hello world" exits with code 1).

I cross compiled QT 5.2.1 for a linux embedded device (TI AM335x) using the toolchain supplied by TI (SDK 6.00.00). I also added ICU support (because I am planning to cross-compile QtWebkit too and ICU is a required dependency).

So, I previously built ICU (version 52) and then I cross-compiled QT using the following configuration:

./configure -prefix /opt/qt5 -opensource -confirm-license -platform linux-g++
-icu -I /opt/icu/include -L /opt/icu/lib -R /opt/icu/lib -no-cups -no-nis
-no-dbus -no-pch -no-accessibility -no-gtkstyle -no-xcb -eglfs -no-directfb
-qpa eglfs-xplatform linux-arm-gnueabihf-g++ -opengl es2 -nomake examples
-nomake tests -v

(previously built ICU libraries reside in /opt/icu/lib).

QT was then compiled using make && make install, as usual.

Then I configured my QT Creator IDE on development machine (Ubuntu 12.04 LTS 32-bit) for compiling applications against the new QT version, just cross-compiled, using the same toolchain provided by TI (SDK 6.00.00).

Everything is fine: my console-based "hello, world" application is compiled and then I am able to deploy it to the device (setting all the requested environment variables required for letting QT find its own libraries).

BUT here comes the problem:

the application always exits with code 1 and produces no output.

If I strace my application, running strace -o trace.log ./TestConsole then it produces the output that you can find here.

In other words it seems that somebody is calling exit_group(1) just after having loaded libicudata.so.52.

But who is calling it? and why?

Please consider that if I cross-build QT without ICU support, then I can compile and run applications against it... So I think it is something ICU-related... Any ideas about that?

Was it helpful?

Solution

I found the problem: the problem is ICU-related.

I noticed that even the execution of the tool /opt/icu/bin/icuinfo on the target platform exits with 1 at startup (you can find the full strace log here).

A new ICU-related question has been published here, so I think that this question can be closed.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top