Qt in 32 Bit kompilieren



  • Hallo,

    ich habe ein 64 Bit Linux und moechte jedoch eine Qt Anwendung in 32 Bit erstellen.
    qmake erstellt ja aus einer .pro Projektdatei ein Makefile. Damit das Makefile ein 32Bit Binary erzeugt, habe ich die Umgebungsvariable QMAKESPEC=linux-g++-32 gesetzt. Scheint auch zu klappen, denn das mit qmake erstellte Makefile beginnt so:

    CC = gcc
    CXX = g++
    DEFINES = -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
    CFLAGS = -m32 -pipe -O2 -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wall -W -D_REENTRANT $(DEFINES)
    CXXFLAGS = -m32 -pipe -O2 -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -Wall -W -D_REENTRANT $(DEFINES)
    INCPATH = -I/usr/share/qt4/mkspecs/linux-g++-32 -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtOpenGL -I/usr/include -I../../Ted/inc -I/usr/X11R6/include -I.
    LINK = g++
    LFLAGS = -m32 -Wl,-O1
    LIBS = $(SUBLIBS) -L/usr/lib64 -L/usr/X11R6/lib -lQtOpenGL -L/usr/lib64 -L/usr/X11R6/lib64 -pthread

    Wie man sieht steht nun bei CFLAGS ein -m32. Das mit dem Umstellen auf ein 32 Bit scheint also geklappt zu haben. Nur eins passt nicht: Bei LIBS stehen lauter Ordner mit 64 Shared Objects. Deswegen bekomme ich beim Ausfuehren von make lauter solche Fehlermeldungen:

    /usr/lib64/gcc/x86_64-suse-linux/4.4/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/libQtOpenGL.so when searching for -lQtOpenGL

    Er sucht ja faelschlicherweise in /usr/lib64 und nicht nach den 32 Bit Shared Objects in /usr/lib.
    Wieso generiert also qmake selbst im 32 Bit "Modus" ein Makefile, das lib64 einbindet? Wieso aender ich das?

    Danke!



  • Dieser Thread wurde von Moderator/in Marc++us aus dem Forum Rund um die Programmierung in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten