Question

J'ai un projet XCode ( A ) référençant un autre projet ( B ). Par défaut (si je comprends bien), XCode construira implicitement la configuration de la dépendance B qui correspond à la configuration de la cible de A (par exemple, "Débogage"). ;). Mais que se passe-t-il si je veux, par exemple, Un construire en tant que " Débogage " et le B à construire en tant que "publication". Comment pourrais-je spécifier cela dans XCode?

Était-ce utile?

La solution

Je ne connais pas d'approche facile, mais vous pouvez le forcer brutalement en appelant directement xcodebuild pour la dépendance avec un " Exécuter le script " phase de construction.

Je sais que ce n'était qu'un exemple, mais si votre objectif réel est que le sous-projet soit une version Release (sans symboles), vous obtiendrez peut-être une meilleure expérience en construisant simplement le sous-projet dans une bibliothèque ou un cadre. et en vérifiant le binaire résultant dans votre système de contrôle de version. Chaque fois que j'ai un élément du système qui change rarement et pour lequel je ne veux pas de symboles de débogage, je le construis comme une bibliothèque statique et l'enregistre. Je vais souvent de l'avant et déplace le code ailleurs (avec un fichier LISEZMOI avec le .a qui indique où se trouve le code et comment il a été construit). Cela permet de gagner du temps sur la construction et le paiement et est d'une valeur inestimable pour les grands projets.

Autres conseils

Cela pourrait aider: si la configuration du projet A n'est pas trouvée, Xcode construira la Release config comme solution de secours (ou peut-être la première config de la liste). .

Ensuite, vous pouvez "forcer" le lien utilisant ce conseil: Xcode custom La configuration de construction provoque "bibliothèque / fichier non trouvé". pour les bibliothèques statiques

Oui, cela n’est pas naturellement supporté par Xcode; lorsque vous construisez une cible, il crée une configuration d'elle-même et de toutes les cibles dépendantes.

La solution de contournement, comme l'a mentionné Rob, est d'avoir une cible dépendante qui est un type Cible d'agrégat comprenant une seule phase de construction de script d'exécution, qui appelle simplement la version de configuration de xcodebuild (ou autre).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top