20 votes

Apprendre et comprendre le système de construction Xcode

Très bien, je suis curieux de connaître le processus de construction avec Xcode. La mise en place de cibles multiples, comment automatiser le versioning et plus généralement comprendre le système pour pouvoir le manipuler pour faire ce que je veux.

Quelqu'un a-t-il des livres ou peut-il m'indiquer une documentation quelque part pour que je puisse comprendre tout cela ?

Merci beaucoup.

Autre chose, si quelqu'un voit ça depuis qu'il l'a changé.

Mais y a-t-il des livres dont quelqu'un a connaissance qui se concentrent sur Xcode 4 ? Il y a Xcode 3 Unleashed mais je serais vraiment curieux de savoir s'il y a des livres qui se concentrent principalement sur Xcode 4.

10voto

the_mandrill Points 12530

Une chose qui est vraiment essentielle pour des constructions cohérentes, reproductibles et automatisables est la connaissance de l'environnement de travail de l'utilisateur. xcodebuild commandement. Malheureusement, je n'ai pas trouvé de documentation officielle à ce sujet, à part la page de manuel (type man xcodebuild ). Il existe un guide utile pour automatiser la construction d'un iphone. aquí qui comprend la construction avec xcodebuild et le versioning avec agvtool . Ceci est tout aussi pertinent pour la construction générale d'applications Mac.

En général, la construction avec xcodebuild est très simple :

cd project_dir
xcodebuild -project myproject.xcodeproj -configuration Release ARCHS="x86_64 i386" build

Une fois que vous pouvez construire à partir d'un script comme celui-ci, il est très facile de l'insérer dans un système de construction automatique.

2voto

yoAlex5 Points 2350

Processus de construction de Xcode

Xcode utilise xcodebuild en interne

[SEULEMENT_ACTIVE_ARCH]
[Bitcode]
[SKIP_INSTALL]
[DÉFINIT_MODULE]

.swift -> Abstract Syntax Tree(AST) -> Swift Intermediate Language(SIL) -> Intermediate Representation(IR) -> .o 

Xcode expose certaines de ces étapes :

  1. Preprocessing :
  • Remplacer les macros

  • Splits .h et .m .

    Dans Xcode, vous pouvez regarder la sortie du préprocesseur de .m en sélectionnant

      select .m file -> Product -> Perform Action -> Preprocess
  1. Compiling - traduit un code intermédiaire de bas niveau.
    Souvent, vous pouvez voir ce fichier lorsque vous déboguez un code qui ne vous appartient pas. Xcode vous permet de revoir la sortie.

     select .m file -> Product -> Perform Action -> Assemble
  2. Assembling (produire .o ) - traduit le code en fichier objet ( .o fichier) [Mach-O] Dans Xcode, vous trouverez ces fichiers objets à l'intérieur du répertoire <product_name>.build/Objects-normal dans le répertoire des données dérivées.

  3. Static Linking (produire .app , .a , .framework ...) - C'est une partie de l'éditeur de liens statiques qui doit résoudre les symboles entre les fichiers objets et les bibliothèques/frames. Ce processus produit un fichier exécutable fusionné qui peut contenir des ressources supplémentaires et des binaires dynamiques.

  4. Dynamic linking - la liaison dans un chargement ou une exécution. Ce processus peut générer des erreurs lors de l'exécution du binaire

Vous pouvez également utiliser Xcode Report Navigator pour en savoir plus sur le processus de construction

[LLVM]

[Liaison statique et dynamique]

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