web-dev-qa-db-fra.com

Générer des fichiers de création (pour GCC) à partir de Visual Studio Solution

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

13
Sijo

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

6
Carlos Dueñas

Vous pouvez utiliser i.e. vcproj2cmake ou vcxproj2cmake . D'autres outils sont déjà listés ici: Comment aider vcxproj à créer un projet?

1
Gr3yh0und

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

0