Seite 1 von 1

[gelöst]Qtopia cross-compile für arm

Verfasst: 1. Juni 2006 08:34
von Bitz
Hallo Board,

ich versuche gerade Qtopia auf einem Arm zu installieren. Leider klappt das ganze nicht so wie ich will...

Ich hab Qtopia auf meinem PC (x86) installieren können ohne größere Problem.. Der qvfb funktioniert einwandfrei...

Nun zum eigentlichen Problem...

Jetzt versuch ich das ganze eben zu cross-compilen damit ich es auf meinem arm ebenfalls zum laufen bekomme...

zur Konfiguration benutze ich:

./configure -prefix /usr/local/Trolltech/QtopiaCore-4.1.1-arm -embedded arm -depths 4,8 -pch -qt-zlib -qt-libjpeg -qt-libpng -release


nach dem make werden dann zuerst Befehle mit dem normalen gcc ausgeführt und dann mit dem arm-linux-gcc. Dort bricht er aber ab wenn er die Datei src/corelib/arch/arm/malloc.c compilieren will

Fehlermeldung:

Code: Alles auswählen

arm-linux-gcc -c -include .obj/release-shared-emb-arm/QtCore -pipe -O2 -Wall -W -D_REENTRANT -fPIC  -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_CAST_TO_ASCII -DQT3_SUPPORT -DQT_MOC_COMPAT -DQT_NO_DEBUG -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-arm-g++ -I. -I../../include -I../../include/QtCore -Iglobal -I../3rdparty/zlib -I.moc/release-shared-emb-arm -I. -o .obj/release-shared-emb-arm/malloc.o arch/arm/malloc.c
arch/arm/malloc.c:298:2: invalid preprocessing directive #if
arch/arm/malloc.c:300:2: invalid preprocessing directive #else
arch/arm/malloc.c:301:1: warning: "__STD_C" redefined
arch/arm/malloc.c:299:1: warning: this is the location of the previous definition
arch/arm/malloc.c:311:2: invalid preprocessing directive #if
arch/arm/malloc.c:313:2: invalid preprocessing directive #else
arch/arm/malloc.c:314:1: warning: "Void_t" redefined
arch/arm/malloc.c:312:1: warning: this is the location of the previous definition
arch/arm/malloc.c:316:2: #endif without #if
arch/arm/malloc.c:318:2: invalid preprocessing directive #if
In file included from arch/arm/malloc.c:319:
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:30:2: invalid preprocessing directive #if
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:39:2: invalid preprocessing directive #if
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:42:2: invalid preprocessing directive #define
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:43:2: invalid preprocessing directive #define
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:45:2: invalid preprocessing directive #define
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:47:2: invalid preprocessing directive #define
/opt/emlix/netdcu5/lib/gcc/arm-linux/3.4.3/include/stddef.h:48:2: invalid preprocessing directive #endif
.
.
.
arch/arm/malloc.c:320:2: invalid preprocessing directive #else
arch/arm/malloc.c:321:2: invalid preprocessing directive #include
arch/arm/malloc.c:322:2: invalid preprocessing directive #endif
arch/arm/malloc.c:324:2: invalid preprocessing directive #ifdef
arch/arm/malloc.c:325: error: parse error before string constant
arch/arm/malloc.c:326:2: invalid preprocessing directive #endif
arch/arm/malloc.c:333:2: invalid preprocessing directive #include
arch/arm/malloc.c:334:2: invalid preprocessing directive #endif
arch/arm/malloc.c:341:2: invalid preprocessing directive #include
.
.
.
arch/arm/malloc.c:5765:1: unterminated #ifndef
arch/arm/malloc.c:5753:1: unterminated #ifndef
arch/arm/malloc.c:5743:1: unterminated #ifndef
.
.
.
arch/arm/malloc.c:325: confused by earlier errors, bailing out
make[3]: *** [.obj/release-shared-emb-arm/malloc.o] Fehler 1
make[3]: Leaving directory `/home/test/Desktop/GraphikFrameworks/Qtopia/qtopia-core-opensource-src-4.1.1/src/corelib'
make[2]: *** [release] Fehler 2
make[2]: Leaving directory `/home/test/Desktop/GraphikFrameworks/Qtopia/qtopia-core-opensource-src-4.1.1/src/corelib'
make[1]: *** [sub-corelib-make_default-ordered] Fehler 2
make[1]: Leaving directory `/home/test/Desktop/GraphikFrameworks/Qtopia/qtopia-core-opensource-src-4.1.1/src'
make: *** [sub-src-make_default-ordered] Fehler 2
Vielleicht kann mir jemand von euch weiterhelfen. Hab im Internet bis jetzt nichts gefunden was mir weiterhelfen könnte...

Danke im voraus.

Gruß

Bitz

Verfasst: 27. Juni 2006 11:36
von Bitz
Für alle die vielleicht irgendwann mal auf ein ähnliches Probelm stoßen...

wenn man beim ./configure noch ein -little-endian hinzufügt, geht der compiler weiter. Leider ist wohl in der Version 4.1.1 ein Bug enthalten durch den es gar nicht möglich ist Qtopia für den ARM richtig zu kompilieren..

Nach dem umstieg auf Qtopia-4.1.3 hat er auf anhieb durchkompiliert und ich muss sagen Qtopia läuft ziemlich gut.

Verfasst: 27. Juni 2006 13:11
von BartSimpson
Als Tipp zum testen würde ich statt den qfb lieber den qvfb nehmen.
Das ist sicher zum entwickeln, da du dir damit nicht den X Server abschießen kannst.