2009-12-15 3 views
2

J'écris un projet C simple. J'utilise un Mac et j'aime travailler avec Xcode et je veux utiliser le projet Xcode et l'environnement de construction. J'aimerais pouvoir le construire sur d'autres plateformes. Ne pas être trop familier avec Linux (encore) je suppose que cela impliquerait un makefile. Mon projet n'a pas de dépendances et il est à peu près aussi vanillé que possible.Compilation sous Linux et Mac OSX: Utilisation de Xcode build and make?

Y at-il un moyen facile de faire cela? Devrai-je garder trace de deux scripts de construction/configurations distincts?

+0

Cela ressemble plus à une question sur le travail avec Linux, car vous semblez heureux avec Xcode, et votre titre peut signifier que cette question est manquée par les personnes les mieux placées pour y répondre –

+0

Juste point, merci. J'ai changé le titre. – Joe

Répondre

3

Il est possible de faire en sorte que Xcode utilise des scripts de compilation externes, mais dans votre cas cela ne devrait pas être nécessaire. Les projets Xcode qui n'ont pas de dépendances externes sont générés hors de la boîte. Vous n'aurez pas besoin de faire quoi que ce soit pour que cela fonctionne. Pour que votre projet puisse également s'appuyer sur d'autres plateformes, un simple makefile devrait suffire. Lorsque vous construisez sur Mac OS X, vous laissez Xcode faire le travail et lorsque vous construisez sur une autre plate-forme, vous laissez le makefile et l'utilitaire faire le travail. Une fois que vous commencez à construire des projets plus complexes, vous pouvez apprendre à utiliser un système de construction multiplateforme. GNU autotools et Cmake sont deux systèmes de compilation populaires. GNU Autotools est très complexe, composé de nombreux utilitaires différents et a une courbe d'apprentissage abrupte, mais il y a beaucoup de documentation disponible en ligne. CMake est un outil unique, facile à apprendre, mais la documentation en ligne est rare, pour en tirer pleinement parti, il faut obtenir une copie du livre CMake. CMake a l'avantage de pouvoir générer automatiquement des projets Xcode, il peut également générer des projets pour l'IDE de Microsoft sous Windows. GNU autotools ne peut pas faire cela.

Questions connexes