2009-06-26 17 views
6

Necesito hacer una compilación cruzada de mi aplicación QT en Linux. Recopilé mi aplicación del QT SDK en Linux y está funcionando correctamente.
¿Cómo creo un .exe para la misma aplicación en Linux. He instalado Mingw en Linux y qmake, pero no sé cómo proceder con la compilación cruzada.
¿Cómo puedo vincular mi QT con un compilador cruzado como MinGW y Qmake? Estoy usando SuSE Linux. También he pasado por http://Silmore/29, pero no tengo una idea clara de cómo proceder más adelante.¿Cómo puedo cruzar la compilación de mi aplicación Linux para obtener un ejecutable de Windows en Linux?

+2

suse, vincat publicar de nuevo y ¿qué es esto? ¿La 7ª pregunta duplicada en una fila? ¿Qué hay de realmente tratar de profundizar en la materia por ti mismo y no esperar a que alguien te la cree con cuchara? – rasjani

Respuesta

0

Básicamente, utiliza su herramienta cruzada para el proceso Make en lugar de la cadena de herramientas del host. Supongo que no hay script de configuración de autotools. Si existe, puede ejecutar configure con --host especificado y tenerlo todo resuelto para usted.

Lo que deberá hacer es configurar CC, LD, CFLAG, LDFLAGS (probablemente también CXX y CXXFLAGS) y modificar el Makefile para usar las bibliotecas de QT correctas, que deberán ser mingw, no sus bibliotecas de Linux . Por lo tanto, es posible que también necesite obtener MinGW/Windows QT SDK y almacenarlo por separado para que sus rutas de acceso se puedan especificar correctamente.

Espero que esto ayude!

+0

¿Puede ser aún más elaborado, por favor ... ¿Tiene mingw Windows binarios y dll? por lo que yo sé, mingw tiene librerías de Windows y archivos binarios que ayudan a crear ejecutable para Windows, que está instalado en Linux m/c, si entrego el comando como [admin @ host: i386mingw-gcc app.cpp -0 aplicación .exe]. Los pls me guían si estoy equivocado. –

+0

Correcto - Linux MinGW tiene ejecutables de Linux (i386-mingw-gcc y amigos) y bibliotecas de Windows (y DLL). Está diseñado para permitirle compilar sus programas para Windows en Linux. Tenga en cuenta que para compilar C++ debe usar i386-mingw-g ++, no i386-mingw-gcc. –

0

Puede ejecutar el cl.exe de Visual C++ Express Edition 2008 a través del vino para compilar su proyecto.

+1

no se supone que use emulador de vino ... tengo que compilar de forma nativa en Linux para obtener .exe .. pls dígame el procedimiento de hacer esto con el compilador cruzado Mingw en Linux –

+0

procedimiento: qmake && make – rasjani

3

no estoy familiarizado con SuSE, Ubuntu, pero tiene los paquetes mingw32 que es un compilador cruzado dirigidos ventanas, junto con el win32api de código abierto:

alt text http://liranuna.com/junk/mingw32-crosscompile.png

Después de una pequeña búsqueda, resulta que hay son RPM para él here, mientras que probablemente debería estar en sus repositorios.

+0

he instalado mingw en mi SUSELinux ... pero no encuentro i386-mingwmsvc-gcc :( tengo i386mingw-gcc y muchos otros ... di un comando como admin @ host: i386mingw-gcc analogclock.cpp -mwindows -o analogclock .exe pero que dio salida como: el compilador de C++ no está instalado en este sistema :( –

+0

es ese comando para crear ejecutables para windows? pls telme qué debo hacer? –

+0

@Cathy, necesita instalar el paquetes apropiados para obtener el compilador. –

Cuestiones relacionadas