Je souhaite compiler mon Visual Studio Solution , avec trois projets, sous Linux avec GCC. La solution contient deux DLL projets et une application (.EXE) projet qui utilise ces DLL. Le code source ne contient aucune dépendance de Windows.
Comment convertir la solution (avec 3 projets) en fichiers pouvant être compilés sous Linux avecGCC.
Existe-t-il un outil permettant de convertir la solution Visual Studio (Project) en fichier/s?.
La version de Visual Studio est Visual Studio 2008
Peut-être que cela peut vous aider, mais vous devez gérer vos sorties dans le code original
Faire en sorte
http://code.google.com/p/make-it-so/
ou sln2mak
http://www.codeproject.com/Articles/28908/Tool-for-Converting-VC-2005-Project-to-Linux-Makef
j'espère que cela pourra vous aider
Vous pouvez utiliser i.e. vcproj2cmake ou vcxproj2cmake . D'autres outils sont déjà listés ici: Comment aider vcxproj à créer un projet?
Premièrement, Linux n’a pas de DLL, il a des objets partagés qui peuvent être liés dynamiquement, avec une sémantique différente. Lisez le livre Linkers & Loaders de Levine pour plus d'informations, ainsi que le Program Library Howto et le de Drepper = Comment écrire des bibliothèques partagées . Pour C++, soyez conscient de name mangling et voyez également le mini-howto C++ dlopen .
Ensuite, je pense que vous ne devriez pas essayer de convertir votre projet VS en un Makefile
, vous devriez coder un bon Makefile
par vous-même.
N'oubliez pas de configurer votre Makefile
de manière à ce que -Wall
soit transmis à GCC (et peut-être aussi à -std=gnu99
et à -g
si vous souhaitez obtenir des informations de débogage, probablement thruCFLAGS
ou CXXFLAGS
).
À moins que votre programme ne comporte un million d'applications de code, vous n'aurez pas beaucoup de mal à écrire votre propre variable Makefile
. Je suggère fortement d'apprendre à utiliser GNU make et à lire sa documentation, qui me semble bien écrite (avec une partie de tutoriel). Vous pouvez consulter la sortie de make -p
qui donne la "connaissance intégrée" de GNU make
.
Vous pouvez également regarder à l'intérieur des applications Linux libres existantes et étudier leur Makefile
.
BTW, si vous avez du mal à déboguer vos makefiles, utilisez remake .
Ne pensez pas en termes de "conversion de mon application vers Linux", mais plutôt en termes de "codage d'une application Linux".
Notez que certains frameworks (notamment Qt) existent pour développer des logiciels de manière portable vers Linux, Windows et MacOS. Vous pourriez même les utiliser pour des applications non graphiques.
N'oubliez pas de lire des documents tels que programmation avancée linux et programmation unix avancée