Compilation MinGW sur Linux

J’ai un projet que je veux comstackr pour Windows. J’ai le makefile approprié, tout fonctionne avec g ++. J’ai lancé apt-get install mingw32 , téléchargé un paquet de 100 Mo, mais je ne peux pas savoir comment l’exécuter. Il n’y a pas d’exécutable mingw32 et je ne trouve aucune aide sur Internet, alors comment le comstackr?

Si vous voyez la sortie de dpkg -L mingw32 vous pouvez voir que le paquet contient une chaîne d’outils, c’est-à-dire un ensemble d’outils alternatifs (compilateur, éditeur de liens, etc.) utiles pour comstackr votre code dans un autre système.

Vous devez utiliser /usr/bin/i586-mingw32msvc-g++ pour comstackr votre code. Si je me souviens bien, il existe une variable pour indiquer au Makefile d’utiliser une chaîne d’outils comme celle-ci.

Une autre option consiste à examiner l’environnement Mingw Cross Environment ( MXE ), qui cible spécifiquement la compilation croisée de Linux vers Windows (et récemment aussi vers Mac). Le paquet est compatible avec un grand nombre de bibliothèques et est en cours de développement. Jetez simplement un coup d’œil au site Web pour savoir s’il répond à vos besoins.

Au fait, il est suggéré d’utiliser le développement plutôt que la version finale. Cela est dû au fait que les versions de version sont généralement obsolètes, car les responsables de la maintenance des paquets (des bibliothèques) modifient les URL, ce qui entraîne la rupture de la version de MXE. La version de développement est généralement plus à jour.

J’ai utilisé ceci pour croiser des articles de compilation:

 $ sudo apt-get install mingw-w64 $ ./configure --host=i686-w64-mingw32 --without-zlib # 32 bit # or --host=x86_64-w64-mingw32 64 bit 

ref ici

D’autres projets le font différemment, comme ffmpeg:

  ./configure --target-os=mingw32 --cross-prefix=i686-w64-mingw32- 

ou une

  ./configure CC=i686-w64-mingw32-gcc ... 

etc. GL!