Question

Je suis un utilisateur expérimenté de VS.NET et j'essaie de me familiariser avec Xcode 3.1.1.
Voici ce que j'essaie d'accomplir:

J'aimerais qu'une bibliothèque statique ("Lib") ait son propre fichier xcodeproj. Je souhaitais utiliser une application exécutable ("App") qui utilise Lib pour référencer le fichier xcodeproj de Lib afin que les modifications apportées à Lib provoquent la reconnexion de App. Idéalement, j'aimerais pouvoir modifier les fichiers source de Lib dans l'espace de travail Xcode de l'Application afin de ne pas avoir à travailler tout le temps à y apporter des modifications.

Grâce à l'aide en ligne, j'ai compris que je pouvais simplement faire glisser la bibliothèque statique xcodeproj dans le projet de mon application et qu'elle obtiendrait la référence. Je vois qu'une fois que ma bibliothèque statique xcodeproj est dans le projet de mon application, je peux simplement la faire glisser vers la cible de l'application et elle comprend que cette application dépend de Lib. Cela semble être la bonne voie, mais les choses ne fonctionnent pas comme je le souhaiterais encore.

Voici mes questions:

  1. Il semble que le fait d’avoir une application dépende de Lib ne l’a pas liée à Lib. Il semble que je doive explicitement faire glisser libLib.a du dossier Lib vers "Link Binary With Libraries" de l'App. étape de construction. Dans VS.NET, il suffit de spécifier le projet en tant que dépendance de la solution pour l'ajouter à la ligne de liaison. Je veux juste m'assurer que je ne manque de rien.

  2. Lorsque l'application est ouverte dans Xcode et que j'y glisse Lib.xcodeproj, je n'y trouve aucun fichier source. Je n’obtiens que libLib.a sous le symbole "Lib.xcodeproj". dossier. Dans VS.NET, je peux modifier les fichiers source de Lib et les reconstruire, etc., mais avec cette approche dans Xcode, les modifications apportées à Lib.cpp n'entraînent pas la reconstruction de Lib lorsque je reconstruis App. Idéalement, j'obtiendrais tous les fichiers sources et les cibles de Lib lorsque je ferais glisser Lib.xcodeproj dans App. Y a-t-il un moyen de le faire?

Merci d'avance pour vos réponses!

Était-ce utile?

La solution

Vous avez raison, le fait de faire en sorte que la cible A dépende de la cible B (que ce soit au sein du même projet ou d'un projet à l'autre) ne pas le lien entre la cible A et la cible B. Vous devez les spécifier distinctement; C’est parce que ce sont des concepts distincts et que vous pouvez ne pas vouloir des liens entre les cibles & # 8212; & nbsp; par exemple, un outil de ligne de commande qui obtient construit par la cible C et est utilisé dans le cadre du processus de construction de la cible A.

De plus, vous avez raison de dire que le référencement du projet B à partir du projet A ne vous laissera pas voir le code source du projet B dans la fenêtre du projet A. En effet, Xcode n’a pas le même " espace de travail " modéliser que Visual Studio et Eclipse font; vous avez évoqué plus haut l’existence d’un "espace de travail contenant le projet A". mais Xcode n’a pas vraiment une telle chose, juste une fenêtre représentant le projet A.

Autres conseils

Ouvrez le projet App. Cliquez avec le bouton droit de la souris sur la cible de l'application et choisissez "Lire les informations". Accédez ensuite à l'onglet "Général". et trouvez " Direct Dependencies. " Cliquez sur le bouton (+) (signe plus) pour ajouter une dépendance directe. Le Lib.xcodeproj devrait figurer dans une liste de possibilités pour vous. Choisissez la cible Lib dans cette liste.

Cela devrait permettre au projet Lib de construire (ou de reconstruire) lorsque vous créez la cible de l'application.

(Modification de mon propre message maintenant. Je réalise que je n'ai rien dit du point 2 de la question. Je pense toujours au numéro 2. Je ne suis pas sûr que ce soit possible ou non.)

Je suis également novice dans Xcode 3.1, je viens de jouer avec les problèmes que vous avez mentionnés et j'ai constaté que votre deuxième question ne posait pas de problème. Quelle que soit l'application que vous utilisiez pour modifier le code source de la bibliothèque de dépendances, votre projet principal reconstruira la cible de dépendances. Je l'ai vérifié par:

  1. a modifié le fichier source de la bibliothèque dont dépend votre application, à l'aide du bloc-notes.
  2. Référence du projet de la bibliothèque de dépendances sélectionnée, cliquez avec le bouton droit de la souris et sélectionnez "Ouvrir avec le Finder", puis sélectionnez le fichier source souhaité et le modifiez.

Tout fonctionne bien.

Je suis également un nouvel utilisateur de Xcode. J'ai appris la plupart de ce que je sais d'un livre Xcode de James Bucanek (ISBN 047175479x). C’est un livre plus ancien qui a été écrit pour / avec Xcode 2.2, mais je trouve qu’il est pratiquement tout à fait valable pour moi aujourd’hui, et j’utilise actuellement Xcode 3.1

Vous pouvez probablement trouver une copie utilisée bon marché si vous êtes intéressé.

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