Cross-kompilieren eines Qt-GUI-Anwendung für Qt Creator: Incompatible library Fehler
Ich versuche zu kompilieren Qt für Beaglebord (ARM) für eine Weile und führen Sie einige grundlegende Hello Word GUI-Anwendung. Ich habe build Qt für das cross-kompilieren mit einigen Fehlern und Warnungen, die unten erwähnt werden, und konfiguriert meinem Qt-Creator arbeiten mit meine cross-compile-toolchain. Und ich habe eine einfache Qt GUI-Projekt, aber wenn ich versuche, mein Projekt erhalte ich diese Fehler:
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtGui.so when searching for -lQtGui
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtGui.so when searching for -lQtGui
:-1: error: cannot find -lQtGui
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtNetwork.so when searching for -lQtNetwork
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtNetwork.so when searching for -lQtNetwork
:-1: error: cannot find -lQtNetwork
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtCore.so when searching for -lQtCore
:-1: error: skipping incompatible /usr/local/Trolltech/QtEmbedded-4.7.4-generic/lib/libQtCore.so when searching for -lQtCore
:-1: error: cannot find -lQtCore
:-1: error: collect2: ld returned 1 exit status
Alsa es ist ein gelbes Warnsymbol auf einen Listeneintrag Qt-Creator->Optionen->Qt4 Qt-Versionen Liste:
Ich bin mit Ubuntu 10.10 x86 und aktuellen Angstrom-tool-Kette. Ich habe verwendet Angstrom online-generator zu bauen, meine tool-chain. Installiert hab ich mein Qt-Creator mit lates offline-Qt-SDK v4.7.4. Danach habe ich heruntergeladen Qt source qt-everywhere-opensource-src-4.7.4.zip und konfiguriert wie folgt:
Geändert qws/linux-arm-gnueabi-g++/qmake.conf als:
#
# qmake configuration for building with arm-none-linux-gnueabi-g++
#
include(../../common/g++.conf)
include(../../common/linux.conf)
include(../../common/qws.conf)
# modifications to g++.conf
QMAKE_CC = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-gcc
QMAKE_CXX = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-g++
QMAKE_LINK = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-g++
QMAKE_LINK_SHLIB = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-g++
# modifications to linux.conf
QMAKE_AR = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-ar cqs
QMAKE_OBJCOPY = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-objcopy
QMAKE_STRIP = /home/olcay/armx86/bin/arm-angstrom-linux-gnueabi-strip
load(qt_config)
Congigured Qt mit folgenden Einstellungen:
./configure
-embedded armv7
-little-endian
-xplatform qws/linux-arm-gnueabi-g++
-qt-gfx-linuxfb
-qt-gfx-vnc
-largefile
-no-accessibility
-no-qt3support
-no-sse2
-qt-libpng
-qt-libjpeg
-no-cups
-no-libtiff
-nowebkit
-qt-zlib
-nomake examples
-nomake demos
-opensource
-confirm-license
-no-fast
-multimedia
-optimized-qmake
Hier ist meine Ausgabe in der Konsole für die Konfiguration Skript.
Wie Sie sehen können in configure output gibt es nur Baum Warnhinweise:
for /home/olcay/qt-everywhere-opensource-src-4.7.4/src/3rdparty/webkit/WebKit/qt/tests/hybridPixmap/hybridPixmap.pro
WARNING: Failure to find: hybridPixmap.cpp
for /home/olcay/qt-everywhere-opensource-src-4.7.4/src/3rdparty/webkit/WebKit/qt/tests/benchmarks/loading/loading.pro
WARNING: Failure to find: loading.cpp
for /home/olcay/qt-everywhere-opensource-src-4.7.4/src/3rdparty/webkit/WebKit/qt/tests/benchmarks/painting/painting.pro
WARNING: Failure to find: painting.cpp
Außerdem gibt es eine Warnung über die floating-point-format:
The system floating point format could not be detected.
This may cause data to be generated in a wrong format
Bitte helfen Sie mir, um herauszufinden, das problem.
Vielen Dank im Voraus.
UPDATE 1
Wenn du vorher Lesen dieser Frage habe ich meine Konfiguration geändert und neu kompiliert und installiert Qt und aktualisiert meine Frage, basierend auf der neuen Konfiguration und neue Ergebnisse. Es mir zur Verfügung stellen, um Fahrt von make install Fehler aber das Hauptproblem immer noch nicht gelöst.
UPDATE 2
Habe ich bemerkt, dass der Qt Creator aufrufen qmake für linux-g++-32 nicht für qws/linux-arm-gnueabi-g++ also änderte ich die linux-g++-32/qmake.conf mit den erforderlichen Einstellungen. Jetzt bin ich in der Lage zu bauen meine Anwendung. Aber ich habe keine test application binary noch, weil ich bin jetzt zu Hause. Testen werde ich meine Anwendung und die Ergebnisse hier posten morgen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie mit falschen qconf-Datei.
QtCreater nutzt linux-g++-32/qmake.conf standardmäßig.
Machen erforderlich, geändert, um diese Datei.