Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Ver: Modo: Orden:
Jugando Atlantic en MS Windows | 9 comentarios (9 temáticos, editoriales, 0 ocultos)
Intentaremos desliarlo (none / 0) (#8)
por ridiculum a las Tue Feb 10th, 2004 at 11:46:57 PM CET
(Información Usuario)

Total, lo mas que puede pasar es que meta la pata ;)

MinGW es un compilador como lo es el antiguo djgpp y se ejecuta en WIN32 (Windows 9x en adelante). Puede compilar cualquier programa para windows y puede usar aquellas librerías que estén portadas previamente para WIN32

Cierto. MinGW es el Minimalist GNU win32 compiler. Por decirlo asi, el gcc para win32, asi que puedes usar el api de windows al completo y cuando biblioteca que este en esa plataforma.

Por otra parte tenemos el Cygwin que podriamos decir que es una especie de wine pero al contrario. Es decir ejecuta programas linux sobre un windows a base de interceptar las llamadas al sistema para un supuesto Linux y las convierte en llamadas al sistema para Windows. Al igual que ocurre con Wine, esto carga el sistema y al parecer (por lo que he entendido) a diferencia de wine, es necesario compilar el código para dar el cambiazo en las llamadas al API (aunque no es necesario tocar el código).

Cygwin no es un entorno linux, es un entorno (no se si realmente esta dentro de la categoria de subsistema, usando la terminologia de Windows) POSIX para win32. Evidentemente, debes recompilar lo que necesites, por que cygwin no entiende el formato ejecutable de ningun unix.

¿Y donde entra aquí la compilación cruzada? B-) Lo que yo entiendo por compilación cruzada es que estás desarrollando (compilando) en linux y ejecutas en windows. MinGW se ejecuta en windows luego si usas MinGW no estás haciendo compilación cruzada. ¿como compilas en linux para que sea ejecutable en windows? o de otra forma, las librerias del API WIN32 las puedes conseguir pero, que yo sepa, en linux se generan ficheros a.out o elf pero no COM o EXE. ¿Cómo se hace?

Cuando se compila, creo que se definen, al menos dos parametros que tipicamente se conocen como host y target. El host se refiere a la plataforma donde se ejecute el compilador y el target a la plataforma para la cual generamos el ejecutable. En el caso de la compilacion cruzada, el host y el target difieren, mientras en el caso de la compilacion, digamos, normal, son identicos.

En el caso que nos ocupa, la copilacion cruzada desde linux/i386 a win32/i386 genera un bonito PE (nombre del formato del ejecutable en windows) y el compilador es un mingw32 que se ejecuta en linux/i386 (formato ELF) y genera ejecutables para win32/i386 (formato PE)

Espero no haber liado la cosa mas de la cuenta

[ Padre ]


Jugando Atlantic en MS Windows | 9 comentarios (9 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:
Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda