cmake générer Xcode projet à partir de sources existantes
C'est ce que j'ai, quand j'ai commencé à génération:
iMac:IXCSoftswitch alex$ /usr/bin/cmake -G Xcode .
-- CMAKE_SOURCE_DIR = /Users/alex/Desktop/ixc-v/IXCSoftswitch, CMAKE_BINARY_DIR = /Users/alex/Desktop/ixc-v/IXCSoftswitch
CMake Error at CMakeLists.txt:25 (MESSAGE):
Binary and source directory cannot be the same
-- Configuring incomplete, errors occurred!
Comment puis-je résoudre ce problème? Je suis nouveau dans cmake, les échantillons apprécié.
OriginalL'auteur user170317 | 2013-05-22
Vous devez vous connecter pour publier un commentaire.
CMake est utilisé pour produire de l' out-of-source construit.
L'idée ici est que vous ne mélangez pas les fichiers créés lors de la compilation avec les fichiers source d'origine. Dans la pratique, habituellement, vous pouvez lancer CMake à partir d'un nouveau, vide répertoire de construction et de donner le chemin d'accès au répertoire source comme un argument.
Tous les fichiers générés par CMake (qui pourrait être un beaucoup) va maintenant aller dans le
build
sous-répertoire, tandis que votre répertoire source reste propre de construire des artefacts.Le concept de out-of-source construit peut paraître étrange au premier abord, mais il est en fait un moyen très pratique de travailler une fois que vous vous habituez à elle.
Ceci est déterminé par le projet lui-même. Je vous suggère de consulter la documentation fournie avec le code source.
OriginalL'auteur
À partir de la racine de votre répertoire de projet.
Ceci est similaire à la réponse ci-dessus. Cependant, vous êtes à la gestion manuelle de la sortie de la source de construire. -B met à votre cible répertoire de construction (il m'arrive de préférer _build). J'ai essayé de regarder jusqu'-H de vérifier, mais je ne pouvais pas le trouver. Si ma mémoire est bonne, il indique l'endroit où votre CMakeLists.txt vie.
Je garde cette commande dans un .sh/.fichier bat (selon le cas). De cette façon, je peux garder mes scripts de construire mon projet dans la racine de laquelle une nouvelle personne puisse les trouver facilement.
OriginalL'auteur