MRW
http://piratenpartei.ch

Piratenpartei Zürich
PC 85-112704-0

Der Politnetz Auftritt von Marc Wäckerlin Im Politnetz unterstützen

CrossCompile Qt Win32 from Linux

Voraussetzung: Alle Windows-Libraries sind unter /opt/local/i586-mingw32msvc installiert (also ./configure –prefix=/opt/local/i586-mingw32msvc –host=i586-mingw32msvc).

Ich habe die erforderlichen Libraries wie folgt kopiert:

sudo cp -r /home/marc/.wine/drive_c/Qt/4.5.1/lib/* /opt/local/i586-mingw32msvc/lib/
sudo cp -r /home/marc/.wine/drive_c/Qt/4.5.1/include/* /opt/local/i586-mingw32msvc/include/
sudo cp -r /home/marc/.wine/drive_c/Qt/4.5.1/src/* /opt/local/i586-mingw32msvc/src/
 
sudo cp -r /home/marc/.wine/drive_c/Programme/Boost-1.34.1/lib/lib*.a /opt/local/i586-mingw32msvc/lib/
sudo cp -r /home/marc/.wine/drive_c/Programme/Boost-1.34.1/include/* /opt/local/i586-mingw32msvc/include/
 
# The libs need to be converted first
#sudo cp -r /home/marc/.wine/drive_c/MicrosoftSDK/Lib/lib*.a /opt/local/i586-mingw32msvc/lib/
sudo cp -r /home/marc/.wine/drive_c/MicrosoftSDK/include/* /opt/local/i586-mingw32msvc/include/

Folgende Datei erzeugen, dann qmake -spec cross-mingw-g++:

> cat /usr/share/qt4/mkspecs/cross-mingw-g++/qmake.conf                                                    
#                                                                                                          
# qmake configuration for win32-g++                                                                        
#                                                                                                          
# Written for MinGW                                                                                        
#                                                                                                          
 
MAKEFILE_GENERATOR      = MINGW
TEMPLATE                = app  
CONFIG                  += qt warn_off link_prl copy_dir_files
QT                      += core gui                           
DEFINES                 += UNICODE QT_LARGEFILE_SUPPORT       
QMAKE_COMPILER_DEFINES  += __GNUC__ WIN32                     
 
QMAKE_EXT_OBJ           = .win32.o
QMAKE_CC                = gcc     
QMAKE_LEX               = flex    
QMAKE_LEXFLAGS          =         
QMAKE_YACC              = byacc   
QMAKE_YACCFLAGS         = -d      
QMAKE_CFLAGS            =         
QMAKE_CFLAGS_DEPS       = -M      
QMAKE_CFLAGS_WARN_ON    = -Wall   
QMAKE_CFLAGS_WARN_OFF   = -w      
QMAKE_CFLAGS_RELEASE    = -O2     
QMAKE_CFLAGS_DEBUG      = -g      
QMAKE_CFLAGS_YACC       = -Wno-unused -Wno-parentheses
QMAKE_CFLAGS_THREAD     = -mthreads                   
 
QMAKE_CXX               = i586-mingw32msvc-g++
QMAKE_CXXFLAGS          = $$QMAKE_CFLAGS      
QMAKE_CXXFLAGS_DEPS     = $$QMAKE_CFLAGS_DEPS 
QMAKE_CXXFLAGS_WARN_ON  = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
QMAKE_CXXFLAGS_RELEASE  = $$QMAKE_CFLAGS_RELEASE 
QMAKE_CXXFLAGS_DEBUG    = $$QMAKE_CFLAGS_DEBUG   
QMAKE_CXXFLAGS_YACC     = $$QMAKE_CFLAGS_YACC    
QMAKE_CXXFLAGS_THREAD   = $$QMAKE_CFLAGS_THREAD  
QMAKE_CXXFLAGS_RTTI_ON  = -frtti                 
QMAKE_CXXFLAGS_RTTI_OFF = -fno-rtti              
QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions      
QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions  
 
 
QMAKE_RUN_CC            = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CC_IMP        = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
QMAKE_RUN_CXX           = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CXX_IMP       = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
 
QMAKE_LINK              = i586-mingw32msvc-g++
QMAKE_LFLAGS            = -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mwindows
QMAKE_LFLAGS_RELEASE    = -Wl,-s
QMAKE_LFLAGS_DEBUG      =
QMAKE_LFLAGS_CONSOLE    = -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS    = -Wl,-subsystem,windows
QMAKE_LFLAGS_DLL        = -shared
QMAKE_LINK_OBJECT_MAX   = 10
QMAKE_LINK_OBJECT_SCRIPT= object_script
 
QMAKE_LIBS              =
QMAKE_LIBS_CORE         = -lkernel32 -luser32 -lshell32 -luuid -lole32 -ladvapi32 -lws2_32
#QMAKE_LIBS_CORE         = -lkernel32 -luser32 -luuid -lole32 -ladvapi32 -lws2_32
QMAKE_LIBS_GUI          = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32
QMAKE_LIBS_NETWORK      = -lws2_32
QMAKE_LIBS_OPENGL       = -lopengl32 -lglu32 -lgdi32 -luser32
QMAKE_LIBS_COMPAT       = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
QMAKE_LIBS_QT_ENTRY     = -lmingw32 -lqtmain
 
QMAKE_DIR_SEP           = /
QMAKE_COPY              = cp
QMAKE_COPY_DIR          = cp -r
QMAKE_MOVE              = mv
QMAKE_DEL_FILE          = rm -f
QMAKE_MKDIR             = mkdir -p
QMAKE_DEL_DIR           = rm -rf
 
QMAKE_IDC               = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc
 
QMAKE_IDL               = midl
QMAKE_LIB               = i586-mingw32msvc-ar -ru
QMAKE_RC                = i586-mingw32msvc-windres
 
QMAKE_ZIP               = zip -r -9
 
QMAKE_STRIP             = i586-mingw32msvc-strip
QMAKE_STRIPFLAGS_LIB   += --strip-unneeded
QMAKE_CHK_DIR_EXISTS    = if not exist
 
QMAKE_MOC             = moc-qt4
QMAKE_UIC             = uic-qt4
QMAKE_RCC             = rcc
CONFIG               += rtti exceptions staticlib static
QMAKE_CXX             = i586-mingw32msvc-g++
QMAKE_LINK            = i586-mingw32msvc-g++
QMAKE_LIB             = i586-mingw32msvc-ar -ru
QMAKE_RC              = i586-mingw32msvc-windres
QMAKE_STRIP           = i586-mingw32msvc-strip
QMAKE_INCDIR          = /opt/local/i586-mingw32msvc/include
QMAKE_LIBDIR          = /opt/local/i586-mingw32msvc/lib
QMAKE_INCDIR_QT       = /opt/local/i586-mingw32msvc/include
QMAKE_LIBDIR_QT       = /opt/local/i586-mingw32msvc/lib
 
load(qt_config)

Diskussion

, %2015/%10/%28 %05:%Oct:

I am really impressed with your writing skills and also with the layout on your weblog. Is this a paid theme or did you modify it yourself? Anyway keep up the nice quality writing, it's rare to see a nice blog like this one today.