Je joue avec Qt depuis quelques heures maintenant. J'ai trouvé que qmake produit 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 puis-je faire qmake générer des makefiles réguliers ou, si c'est quelque chose qui ne peut pas être fait sur Mac, comment puis-je compiler .xcodeproj
fichiers depuis la ligne de commande?
J'ai essayé xcodebuild -project myProject -alltargets
. J'obtiens beaucoup de sortie suivi de Abort trap
.
Les programmes d'installation binaires open-source Qt pour OS X de Trolltech créent par défaut des fichiers .xcodeproj lorsque vous exécutez qmake. Je n'utilise pas XCode pour l'édition, c'est donc difficile de l'ouvrir pour compiler le projet.
Pour compiler vos projets à partir de Terminal.app, il suffit de définir une variable d'environnement de QMAKESPEC sur macx-g ++
Si vous voulez simplement compiler un certain projet à partir du terminal, allez dans ce répertoire et exécutez
qmake -spec macx-g++
Lorsque vous exécutez qmake, cela crée un Makefile que vous pouvez utiliser en exécutant make.
$ man xcodebuild
Une commande typique pourrait donc être quelque chose comme:
$ xcodebuild -project myProject.xcodeproj -alltargets
Essayez la méthode suivante. Ça doit marcher.
xcodebuild -project myProject.xcodeproj -alltargets
J'ai utilisé cette méthode dans la plupart de mes projets.
En regardant cette partie de votre trace arrière:
# 2008-12-18 20: 40: 52.333 xcodebuild [1070: 613] [MT] ÉCHEC D'ASSERTION dans /SourceCache/DevToolsBase/DevToolsBase-921/pbxcore/FileTypes/PBXCFBundleWrapperFileType.m:174 # Détails: le chemin doit être un non-non chaîne vide, mais c'est une chaîne vide # Object: # Méthode: -subpathForWrapperPart: ofPath: withExtraFileProperties: # Thread: {name = (null), num = 1}
Cela implique que quelque chose, peut-être l'une de vos variables de configuration, est vide lorsqu'il doit faire référence à un fichier. Ce que je me demande, c'est si vous avez peut-être un objectif supplémentaire dans votre projet qui ne fonctionne pas, de sorte que la construction avec -alltargets est à l'origine de votre problème.
J'ai testé xcodebuild sans aucun argument sur l'un de mes projets tout à l'heure - il a fait une construction par défaut de mon projet sans erreurs. Que se passe-t-il si vous l'essayez sans argument?