Quelle est la meilleure façon de construire des bibliothèques open source DLL pour les développeurs Windows à utiliser?

StackOverflow https://stackoverflow.com/questions/987808

Question

J'ai plusieurs logiciels libres C / bibliothèques open source que je développe sur Linux et Mac OS X avec la GNU toolchain (automake, conf, flex, bison, gcc, ...) mais je reçois des demandes de temps en temps pour fournir des DLL Windows. Je voudrais être en mesure de fournir ceux sans avoir à passer beaucoup de temps et d'argent avec Windows développement Visual Studio. J'ai une machine virtuelle Windows XP disponible et je sais aussi le logiciel est portable parfois obtenir les patchs pour en faire construire dans les fenêtres.

Quelles approches ou des outils devrais-je utiliser? La compilation croisée sur Linux? en utilisant Visual Studio Express ou autre chose? Je préférerais quelque chose qui est entièrement automatisé à partir d'un dépôt SVN. Je ne compte pas Cygwin comme solution, car cela ne semble pas fournir ce que les développeurs de Windows ont besoin, dans la mesure que je comprends les problèmes -. Liaison et DLL

Était-ce utile?

La solution

Vous pouvez essayer Mingw avec MSYS, Visual Studio (Express) avec SUA (sous-système pour l'application unix) ou Cygwin pour compiler des programmes qui sont automake / autoconf base (./configure && make pour construire sous linux).

Malheureusement généralement le fichier lib qu'ils créent n'est pas compatible avec d'autres compilateurs, donc si vous voulez que votre bibliothèque pour travailler avec une application qui est développée à l'aide de Visual Studio, vous devez utiliser l'approche VSC ++. En général, beaucoup de projets GNU (consultez GnuWin32 ) ont effectivement VC scripts de construction compatibles aussi, que ce qui peut être compilé à l'aide "nmake"

Autres conseils

Vous pouvez utiliser MinGW ou installer les outils de ligne de commande MSVC Visual studio express.

Soit de ceux-ci peuvent être entraînés par des scripts de ligne de commande.

J'imagine une compilation croisée de Linux fonctionne également, mais je ne sais pas comment cela pourrait être d'y aller facile (ou douloureux).

Cet article présente une courte compilation croisée simple d'une application Windows et en cours d'exécution que l'application sous Wine:

Le développement logiciel de Windows Le kit comprend C / C ++ compilateur Microsoft (ligne de commande uniquement sans outils visuels), de sorte que vous ne même pas besoin de Visual C ++ Express Edition. Windows SDK est un téléchargement gratuit de Microsoft.

Si vous utilisez http://www.cmake.org/ , CMake peut créer la makefile (pour Unix) et le fichier de projet (Visual studio). C'est ce que par exemple le projet KDE utilise.

compilateur Visual Studio peut être démarré à partir d'une ligne de commande Windows avec « devenv / build debug project.csproj » sur le fichier généré cmake. Cela nécessite cependant un ordinateur Windows (peut-être dans une machine virtuelle) avec un visuel (potentialy libre) studio installé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top