44 votes

Construction de projets Qt Xcode à partir de la ligne de commande

Je joue avec Qt depuis quelques heures maintenant. J'ai trouvé que qmake produisait des fichiers de projet Xcode sur Mac OS X au lieu de bons vieux makefiles. Je ne veux pas lancer Xcode à chaque fois que je veux construire "Hello, world".

Comment faire pour que qmake génère des makefiles réguliers ou, si cela ne peut pas être fait sur un Mac, comment compiler les fichiers .xcodeproj à partir de la ligne de commande?

J'ai essayé xcodebuild -project myProject -alltargets . Je reçois beaucoup de résultats suivis de Abort trap .

60voto

Olie Points 10528
 $ man xcodebuild
 

Donc, une commande typique pourrait être quelque chose comme:

 $ xcodebuild -project myProject.xcodeproj -alltargets
 

21voto

user47488 Points 216

L'open-source Qt binaire les programmes d'installation pour OS X de Trolltech par défaut à la création .xcodeproj fichiers lorsque vous exécuter qmake. Je n'ai pas utiliser XCode pour le montage de sorte qu'il est une douleur à l'ouvrir pour compiler le projet.

Pour compiler vos projets à partir de la Borne.application, il suffit de définir une variable d'environnement de QMAKESPEC à macx-g++

Si vous voulez juste de compiler un certain projet dans le terminal, allez dans ce répertoire et lancez

qmake -spec macx-g++

Lorsque vous exécuter qmake, cela va créer un fichier Makefile que vous pouvez utiliser en exécutant faire.

2voto

Essayez de la manière suivante. Ça doit marcher.

 xcodebuild -project myProject.xcodeproj -alltargets
 

J'ai utilisé cette méthode dans la plupart de mes projets.

0voto

Mike Heinz Points 1081

En regardant cette partie de votre trace:

# 2008-12-18 20:40:52.333 xcodebuild[1070:613] [MT] ÉCHEC d'ASSERTION dans /SourceCache/DevToolsBase/DevToolsBase-921/pbxcore/types de fichiers/PBXCFBundleWrapperFileType.m:174 # Détails: chemin d'accès doit être une chaîne non vide, mais c'est une chaîne vide # Objet: # Méthode: -subpathForWrapperPart:ofPath:withExtraFileProperties: # Fil de discussion: {nom = (null), num = 1}

Cela implique que quelque chose, peut-être que l'un de vos variables de configuration, est blanc quand il a besoin de se référer à un fichier. Ce que je me demande si peut-être vous avez un supplément de cible de votre projet qui ne fonctionne pas, de sorte que la construction avec -alltargets est ce qui est à l'origine de votre problème.

J'ai testé xcodebuild sans aucun argument sur un de mes projets tout à l'heure - il y a un défaut de construction de mon projet sans faire d'erreurs. Ce qui se passe si vous l'essayer sans arguments?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X