Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Cross-compiling Qt fürs BeagleBoard

  1. #1
    Registrierter Benutzer
    Registriert seit
    22.06.2007
    Beiträge
    19

    Cross-compiling Qt fürs BeagleBoard

    Hallo,

    ich möchte Qt 4.7.2 auf meinem Linux-Rechner fürs BeagleBoard kompilieren und erhalte eine Fehlermeldung beim Kompilieren. Hat vielleicht jemand einen Tipp für mich? Insbesondere kann ich auch nichts anfangen mit dem Hinweis zu pkg-config. Mit Qt 4.7.3 habe ich das gleiche Problem. Vorgehen: Ich entpacke die Sourcen für embedded Linux, trage den Crosscompiler in qmake.conf ein (extra Ordner) und rufe configure und danach make auf, siehe unten.

    Vielen Dank im Voraus!
    André


    ### Ein- und Ausgabe auf der Shell ###
    Code:
    Rechner$ ./configure -embedded arm -platform qws/linux-x86-g++ -xplatform qws/linux-beagle-g++ -little-endian -prefix /home/ndn/projects/qt_4.7.2/built -opensource -confirm-license -fast -qt-kbd-linuxinput -qt-gif
    
    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
    
    ...
    
    Building on:   qws/linux-x86-g++
    Building for:  qws/linux-beagle-g++
    Architecture:  arm
    Host architecture: i386
    
    Build .................. libs examples demos docs translations
    Configuration ..........  cross_compile release shared dll embedded largefile stl precompile_header neon exceptions_off  minimal-config small-config medium-config large-config full-config qt3support accessibility embedded reduce_exports ipv6 clock-gettime clock-monotonic mremap getaddrinfo ipv6ifname getifaddrs inotify png freetype zlib nis multimedia audio-backend svg script scripttools declarative release
    Debug .................. no
    Qt 3 compatibility ..... yes
    QtDBus module .......... no
    QtConcurrent code ...... yes
    QtGui module ........... yes
    QtScript module ........ yes
    QtScriptTools module ... yes
    QtXmlPatterns module ... no
    Phonon module .......... no
    Multimedia module ...... auto
    SVG module ............. yes
    WebKit module .......... yes
    JavaScriptCore JIT ..... To be decided by JavaScriptCore
    Declarative module ..... yes
    Declarative debugging ...yes
    Support for S60 ........ no
    Symbian DEF files ...... no
    STL support ............ yes
    PCH support ............ yes
    MMX/3DNOW/SSE/SSE2/SSE3. no/no/no/no/no
    SSSE3/SSE4.1/SSE4.2..... no/no/no
    AVX..................... no
    iWMMXt support ......... no
    NEON support ........... yes
    IPv6 support ........... yes
    IPv6 ifname support .... yes
    getaddrinfo support .... yes
    getifaddrs support ..... yes
    Accessibility .......... yes
    NIS support ............ yes
    CUPS support ........... no
    Iconv support .......... no
    Glib support ........... no
    GStreamer support ...... no
    PulseAudio support ..... no
    Large File support ..... yes
    GIF support ............ plugin
    TIFF support ........... plugin (qt)
    JPEG support ........... plugin (qt)
    PNG support ............ yes (qt)
    MNG support ............ plugin (qt)
    zlib support ........... yes
    Session management ..... no
    Embedded support ....... arm
    Freetype2 support ...... auto (yes)
    Graphics (qt) .......... linuxfb multiscreen
    Graphics (plugin) ...... 
    Decorations (qt) ....... styled windows default
    Decorations (plugin) ... 
    Keyboard driver (qt) ... tty linuxinput
    Keyboard driver (plugin) .. 
    Mouse driver (qt) ...... pc linuxtp
    Mouse driver (plugin) .. 
    OpenGL support ......... no
    OpenVG support ......... no
    SQLite support ......... plugin (qt)
    OpenSSL support ........ no 
    Alsa support ........... no
    ICD support ............ no
    
    ...
    
    Rechner$ make
    
    ...
    
    arm-linux-gnueabi-g++ -c -include .pch/release-shared-emb-arm/QtCore -pipe -fno-exceptions -O2 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DELF_INTERPRETER=\"/lib/ld-linux.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-beagle-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm -o .obj/release-shared-emb-arm/qobject.o kernel/qobject.cpp
    {standard input}: Assembler messages:
    {standard input}:1957: Error: selected processor does not support Thumb mode `swp r6,r4,[r0]'
    make[1]: *** [.obj/release-shared-emb-arm/qobject.o] Fehler 1
    make[1]: Verlasse Verzeichnis '/home/ndn/projects/qt_4.7.2/src/corelib'
    make: *** [sub-corelib-make_default-ordered] Fehler 2
    ### Inhalt von qmake.conf ###
    Code:
    include(../../common/g++.conf)
    include(../../common/linux.conf)
    include(../../common/qws.conf)
    
    # modifications to g++.conf
    QMAKE_CC                = arm-linux-gnueabi-gcc
    QMAKE_CXX               = arm-linux-gnueabi-g++
    QMAKE_LINK              = arm-linux-gnueabi-g++
    QMAKE_LINK_SHLIB        = arm-linux-gnueabi-g++
    # modifications to linux.conf
    QMAKE_AR                = arm-linux-gnueabi-ar cqs
    QMAKE_OBJCOPY           = arm-linux-gnueabi-objcopy
    QMAKE_STRIP             = arm-linux-gnueabi-strip
    
    load(qt_config)

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Die Meldung ist eine Assembler Fehlermeldung und ist Prozessor abhängig.
    Code:
    {standard input}:1957: Error: selected processor does not support Thumb mode `swp r6,r4,[r0]'
    Die Frage ist hierbei ob das mit Macros abgefangen werden kann.
    Im Moment hast du alles was AS Macros steuert abgeschaltet.
    MMX/3DNOW/SSE/SSE2/SSE3. no/no/no/no/no
    SSSE3/SSE4.1/SSE4.2..... no/no/no
    AVX..................... no
    Ob das überhaupt geht solltest du besser bei Qt nachfragen - oder testen bis es geht.
    Notfalls Eigene mkspecs Schreiben - da habe ich bei mingw32 auch machen müssen.
    PS: Achte auch darauf das der Preprozessor (cpp) richtig gewählt ist.
    Geändert von undefined (21-06-2011 um 07:49 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •