2009-10-04 9 views
5

En mi trabajo, todos los datos del proyecto residen en un NFS al que se puede acceder tanto desde máquinas Linux como Windows (usando Samba). Todo el trabajo está hecho en Linux, pero estoy jugando con la idea de compilar algunas herramientas para Windows para que pueda depurar con Visual Studio.¿Es posible compilar los binarios de Windows en una máquina Linux?

Ya tengo un buen archivo MAKE que puede construir el código para Linux de 32 bits o de 64 bits utilizando diferentes objetivos. Suponiendo que tengo versiones de Windows de todas las bibliotecas externas en algún lugar del NFS, y suponiendo que el código es lo suficientemente limpio para compilar en Windows, ¿es posible compilar y vincular mi programa para Windows utilizando el archivo MAKE existente, en Linux? Idealmente, me gustaría llamar al archivo MAKE una vez y hacer que construya los tres de Linux de 32 bits, Linux de 64 bits y Windows.

Un plus añadido sería la opción de compilarlo con cualquier metadato de Visual Studio para que sea fácil de depurar.

+0

binarios se precompila fuente se puede compilar – SomeUser

Respuesta

4

Sí, puede lograr eso con MinGW por ejemplo.

Sin embargo, probablemente tendrá que adaptar una o dos opciones en su archivo MAKE.

+0

MinGW se ejecuta en Windows, no en Linux. Pero al menos construirá una aplicación nativa de Windows utilizando las herramientas GNU familiares para los usuarios de Linux. Sin embargo, tenga en cuenta que MinGW utiliza el tiempo de ejecución MSVCRT.DLL C de Microsoft en lugar de GNU libc. – Clifford

+0

MinGW también se ejecuta en Linux. –

+0

MinGW también se ejecuta en Linux, y es lo que normalmente se usa para la compilación cruzada de Linux-> Windows. –

1

Hay una serie de posibilidades que se me ocurre:

  • es posible que trate de ejecutar Visual Studio bajo Wine. Si Visual Studio no se ejecuta, es posible que aún pueda ejecutar las herramientas de línea de comandos.

  • Ejecute una instalación completa de Windows en una máquina virtual. He hecho esto con Linux en Windows, pero no al revés, pero estoy seguro de que es posible.

  • uso de VNC para acceder a un PC con Windows independiente del PC Linux

  • Usar una cruz construyeron a partir de GCC en lugar de Visual Studio

+1

¿Por qué enumerar la mejor opción como la última? – gimpf

+0

@gimpf: enumerados como ocurrieron, y la "mejor opción" es una cuestión de opinión. El OP quería usar el depurador de Visual Studio, y la última opción no es compatible con ese objetivo, por lo que diría que no fue la solución de bast en este caso. – Clifford

1

Es necesario un paquete de compilación cruzada. También puede usar la lib Wine.

Cuestiones relacionadas