Il peu arriver que pour certaines raisons l'on souhaite crée des exécutable pour windows depuis linux.
Il existe une solution: mingw32.
mingw s'utilise avec gcc ou g++.
Installer GCC
Si ce n' est pas déjà fais, installez gcc:
-sois avec synaptic: trouver le paquet gcc et installer le.
-sois avec apt-get: ouvrer un terminal et taper :
sudo apt-get install gcc
exemple:
Pour vérifier l'installation crée un fichier main.c et éditer le.
copier/coller le code suivant:
#include <stdio.h>
int main ()
{
printf ("bonjour linuxien!\n");
return 0;
}
Ouvrer alors un terminal, pour vous placé dans le dossier ou ce situs main.c
et taper:
gcc -o exe main.c
faites ensuite :
./exe
et le message: bonjour linuxien! apparaît
installé mingw32
Installez ensuite mingw32 par le gestionnaire de paquets synaptic ou en tapant :
sudo apt-get install mingw32
cela fais, recompilez le programme fais plus haut en replacent :
gcc -o exe main.c
par
i586-mingw32msvc-gcc -o exe_win main.c
note: exe a été replacé par exe_win arbitrairement pour distinguer l'exécutable linux et l'exécutable windows mais ce n' est absolument pas obligatoire.
les makefiles
Imaginons maintenant un makefile simple (dans le même dossier que main.c ):
exe: main.c
gcc -o exe main.c
Note: il y as une tabulation (et pas des espaces) devant gcc qui est obligatoire.
Attention aux logiciels de traitement de texte qui par défaut remplace les tabulation par des espaces
Pour l'exécuter tapez (une fois placé dans le bon dossier):
make
Il vous suffit de maintenant remplacer gcc par i586-mingw32msvc-gcc pour que le mikefile puisse crée un exécutable windows.
conclusion
Vous pouvez maintenant crée des exécutable windows depuis linux: il vous suffit juste de remplacer lors de vos compilation gcc par i586-mingw32msvc-gcc et g++ par i586-mingw32msvc-g++ , ect ...
N'oubliez pas que cependant les les programmes seront bien plus gros en taille que ceux produits pour Linux ou par Microsoft Visual Studio. Ceci est dû au fait que la bibliothèque standard doit être liée statiquement avec l'exécutable.
source:
http://tfc.duke.free.fr/coding/gcc-fr.html
-----------------------------------------------
Mon premier tuto, vous en pensez quoi ?
Je peu le mètre dans le wiki?