Créer un projet dans XCode

1

En fait, je souhaite transférer mon application basée sur wxWidgets sur Mac sous OS X 10.8 et Xcode 5. Mon application se composera de l'exécutable principal et de deux dylibs.

Ainsi, après avoir ouvert le code X et accédé au menu "Fichier- & gt; Nouveau", je vois des sous-menus "Projet" et "Espace de travail".

Je suis désemparé pour:

  • présumons que je dois créer un espace de travail, puis créer un projet pour l’exécutable principal et un projet pour chaque bibliothèque Dylib.
  • oubliez le "Workspace" et commencez simplement par le projet pour mon binaire principal, puis continuez avec un autre projet de même niveau pour la bibliothèque

Quelqu'un pourrait-il gagner de l'expérience s'il vous plaît?

Igor
la source
Je suis tenté de migrer cela vers SO, car nous ne posons pas vraiment de questions au niveau du code ici. Avant de faire cela - y a-t-il une raison pour laquelle vous avez demandé ici par opposition à SO? Nous autorisons quelques erreurs de base - Xcode ou comment télécharger l’application, mais cela ressemble plus à la façon de styliser votre configuration qu’à la mécanique qui consiste à exécuter l’application ou à comprendre le service du programme pour développeurs.
bmike
@bmike, SO est réservé aux questions de programmation. Celui-ci est plus pour une conception de projet dans l'environnement peu familier. J'ai beaucoup d'expérience avec MSVC, où l'espace de travail est créé avec le premier projet, mais je ne suis pas sûr que le même paradigme s'applique à XCode
Igor
@bmike, comme je l'ai dit, la structure du projet est "application principale + dylib's". Et c’est plus une question XCode que celle de programmation.
Igor
@bmike, du rapide coup d'oeil à developer.apple.com/library/ios/featuredarticles/XcodeConcepts/… il me semble que j'ai besoin d'un espace de travail d'abord, puis j'ajoute le projet de bibliothèques. Pouvez-vous confirmer?
Igor
Il y a beaucoup de tutoriels sur Xcode, je pense que c'est trop large pour qu'on puisse y répondre ici
Mark

Réponses:

2

Voici un exemple de création d'une application de ligne de commande C ++ simple et d'une bibliothèque dynamique. La version de Xcode est la version 7.2.1, qui requiert au moins l'exécution de OS X 10.10.5, mais peut générer des applications nécessitant uniquement OS X 10.7 ou plus récent.

Partie I: Créer l’espace de travail, les projets et les fichiers de code source.

  1. À l'aide de l'application Finder, créez un dossier. Dans ce cas, je créé le dossier nommé "simple" dans mon dossier "Documents".
  2. Lancez l'application Xcode. Si la fenêtre "Welcome to Xcode" apparaît en haut, fermez la fenêtre. Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Espace de travail ... article. J'ai utilisé le nom "simplews.wcworkspace", que j'ai choisi de placer dans le "simple" dossier.
  3. Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Projet ... article. Sélectionner "Application OS X", puis "Outil de ligne de commande". Cliquez sur le "Suivant" bouton.
  4. Pour "Nom du produit:" et "Langue:", j'ai utilisé "simple" et "C ++", respectivement. Cliquez sur le bouton "Suivant".
  5. Sous "Ajouter à:" sélectionnez "simplews". Cliquez sur le bouton "Créer".
  6. Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Projet ... article. Sélectionner "Framework & bibliothèque", puis "bibliothèque". Cliquez sur le bouton "Suivant".
  7. Pour "Nom du produit:", "Framework:" et "Type:", j'ai utilisé "simplelib", "Aucun (bibliothèque Plain C / C ++)" et "Dynamique", respectivement. Clique le Bouton "Suivant".

    Remarque: je choisis une bibliothèque dynamique. Si vous avez besoin d'une bibliothèque statique, remplacez "Dynamique" par "statique". Vous pouvez aussi changer cela après   créer le projet. (Recherchez "Type Mach-O" sous "Construire   Réglages".)

  8. Sous "Ajouter à:" sélectionnez "simplews". Sous "Groupe:" et "simplews". Cliquez sur le bouton "Créer".
  9. Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Groupe article. Sur le dossier créé, remplacez le nom "Nouveau groupe" par "simplelib".
  10. Mettez en surbrillance le dossier "simplelib". Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Fichier ... article. Sélectionnez "Source OS X", puis "Fichier C ++". Cliquez sur le bouton "Suivant".
  11. Pour "Nom:" utilisez "simplelib.cpp". Assurez-vous que "Créez également un  fichier en-tête "est ne pas cochée. Cliquez sur le bouton "Suivant".
  12. Vérifiez que le "Groupe" est le dossier "simplelib" et sous "Cibles",  "simplelib" est coché. Cliquez sur le bouton "Créer".
  13. Mettez en surbrillance le dossier "simplelib". Dans la barre de menus, sélectionnez le Fichier- & gt; Nouveau- & gt; Fichier ... article. Sélectionnez "Source OS X", puis "Fichier d'en-tête". Cliquez sur le bouton "Suivant".
  14. Pour "Enregistrer sous:", utilisez "simplelib.h". Sous "Groupe" sélectionnez le dossier  "simplelib". Sous "Cibles", assurez-vous que "simplelib" est coché.  Cliquez sur le bouton "Créer".

Partie II: Configurer les dépendances du projet

  1. Le projet "simple" doit pouvoir trouver les en-têtes du projet "simplelib". Mettez en surbrillance le projet "simple", puis "Construire les paramètres". Remplacez "Chemins de recherche en-tête" par "../simplelib". Une illustration est indiqué ci-dessous.

    Astuce: Cliquez sur l'image ou ouvrez une nouvelle fenêtre pour une meilleure vue.

    700

  2. Le projet "simple" doit pouvoir se lier à la bibliothèque créée par projet "simplelib". Mettez en surbrillance le projet "simple", puis "Construire" Phases ". Sous" Link Binary With Libraries ", cliquez sur le signe +, puis ajoutez "libsimplelib.dylib. Une illustration est présentée ci-dessous.

    701

  3. Supprimez les chemins de recherche de bibliothèque ajoutés à l'étape 2. Mettez en surbrillance le projet. "simple", puis "Paramètres de construction". Sous "Chemins de recherche de bibliothèque", supprimez les chemins "$ (hérité)" et "$ (PROJECT_DIR) lib / build / Debug". Un L'illustration avant les suppressions est indiquée ci-dessous.

    702

    Lorsque vous avez terminé, "Chemins de recherche dans la bibliothèque" ne devrait afficher aucun chemin comme indiqué dans l'image incluse à l'étape 1.

Remarque: La dépendance du projet "simple" sur le projet "simplelib" doit être détectée automatiquement. Par conséquent, l'étape consistant à en inclure un a été omise.

Partie III: Construire et exécuter l'application

Demandez différent ne concerne pas la programmation. Cependant, je vais inclure le code que j'ai entré.

simplelib.h

#ifndef simplelib_h
#define simplelib_h

class sample
{
public:
    static void print();
};

#endif /* simplelib_h */

simplelib.cpp

#include <iostream>
#include "simplelib.h"

void sample::print()
{
    std::cout << "Hi from simplelib!\n";
}

main.cpp

#include <iostream>
#include "simplelib.h"

int main(int argc, const char * argv[])
{
    std::cout << "Hello, World!\n";
    sample::print();
    return 0;
}
  1. Pour créer l'application, sélectionnez d'abord Produit- & gt; Scheme- & gt; Simple de la barre de menu. Met l'accent sur le projet d'application "Simple".

    Remarque: la case à cocher ne se déplace pas toujours après la sélection. Cela fait un bug depuis un certain temps.

  2. Ensuite, sélectionnez Produit- & gt; Construire de la barre de menu.
  3. Enfin, sélectionnez Produit- & gt; Run de la barre de menu. La sortie est montré dans l'image ci-dessous.

704

David Anderson
la source
2 questions: d'abord - j'ai XCode 5.1.1 sous OSX 10.8. lequel avez vous? 2. Mon projet contient également une bibliothèque statique reliant statiquement à l'un des dylibs. Pouvez-vous donner un exemple de ce scénario aussi? Je vous remercie.
Igor