Cette page est en cours de rédaction.
Apportez votre aide…

Ceci est une ancienne révision du document !


Comment utiliser mingw32 pour faire des exécutables windows ?

Il peut arriver que pour certaines raisons l'on souhaite créer des exécutables pour windows depuis linux. Il existe une solution : mingw32. Mingw s'utilise avec gcc ou g++.

Pour suivre ce tutoriel vous devez savoir vous déplacer dans l'arborescence en ligne de commande.

Si ce n'est pas déjà fait, installez gcc:

-soit avec synaptic : trouvez le paquet gcc et installez le.

-soit avec apt-get : ouvrez un terminal et tapez :

 sudo apt-get install gcc

exemple

Pour vérifier l'installation créez un fichier main.c et éditez-le.

Copiez/collez le code suivant :

#include <stdio.h>
 
int main ()
{
printf ("bonjour linuxien !\n");
return 0;
}

Ouvrez alors un terminal, pour vous placer dans le dossier ou se situe main.c et tapez:

 gcc -o exe main.c

faites ensuite :

 ./exe

Le message : "bonjour linuxien !" apparaît.

Installez ensuite mingw32 par le gestionnaire de paquets synaptic ou en tapant :

 sudo apt-get install mingw32

cela fait, recompilez le programme fait plus haut en remplaçant :

 gcc -o exe main.c

par

 i586-mingw32msvc-gcc -o exe_win.exe 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.

Vous venez de créer un exécutable pour windows.

les makefiles

Imaginons maintenant un makefile simple (dans le même dossier que main.c ): Code:

 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.

Vous pouvez maintenant créer des exécutables windows depuis linux : il vous suffit juste de remplacer lors de vos compilations gcc par i586-mingw32msvc-gcc et g++ par i586-mingw32msvc-g++ , etc …

N'oubliez pas que cependant 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

  • tutoriel/comment_utiliser_mingw32_pour_faire_des_executable_windows.1173189887.txt.gz
  • Dernière modification: Le 18/04/2011, 14:51
  • (modification externe)