Les projets livrés avec Smile
Si vous avez installé Smile, édition complète, vous trouverez dans le dossier /Application/Smile/Documentation/fr/readme/ un fichier Exemples de projets Xcode - Lisez moi.rtf décrivant les projets d'exemples pour Xcode. Ce fichier est également disponible en ligne : Exemples de projets Xcode - Lisez-moi
L'installation de Smile crée ou met à jour des projets template et un dossier Satimage includes commun aux projets, situés dans dans /Library/Application Support/Apple/Developer Tools/Project Templates/Satimage Sample Projects/. Les projets templates sont des modèles de projets que vous pouvez choisir lorsque vous sélectionnez le menu File ▸ New Project dans XCode.
Vous trouverez des projets d'exemples dans le dossier /Applications/Smile/.
Chaque projet permet d'utiliser un code C ou FORTRAN existant pour le rendre scriptable, sans avoir à modifier les fichiers d'origine, en définissant de nouveaux fichiers source réalisant l'interface avec AppleScript.
Pour utiliser ces projets, vous devez avoir installé les Developer Tools, et avoir Xcode version 2.2 minimum.
Les quatre projets d'exemples sont les suivants :
- SampleOsax est un projet template installé avec Smile. Il est également fourni dans les projets d'exemples. Il permet de réaliser à partir de votre code un complément de pilotage (scripting addition, ou 'osax') utilisable directement dans Smile - ou depuis n'importe quel script AppleScript. Le code fourni dans cet exemple montre comment gérer des structures de données de classes array of real et matrix.
- SampleApp est un projet template installé avec Smile. Il est également fourni dans les projets d'exemples. Il permet de réaliser une application scriptable, ce qui vous permet de piloter votre code depuis Smile, tout en le faisant vivre indépendamment des autres applications (notamment, vous pouvez le recompiler à tout moment sans avoir à relancer Smile).
- SampleAppFortran77 est un projet permettant de réaliser une application scriptable depuis un code FORTRAN.
- ThreadedApp est un projet permettant d'exécuter votre code dans un thread séparé, de façon à pouvoir par script arrêter et reprendre son exécution à volonté, et effectuer tous les tests nécessaires entre-temps.
Démarrage d'un nouveau projet
Dans Xcode, sélectionnez le menu File ▸ New Project, puis dans la liste qui apparaît, choisissez le projet SampleOsax ou le projet SampleApp dans la catégorie Satimage Sample Projects. Vous devrez alors spécifier un nouveau nom de projet et un nouvel emplacement.
NB : si le chemin d'accès au projet que vous créez comporte des espaces, vous pourrez rencontrer certaines difficultés de compilation.
NB : si vous utilisez les projets d'exemples autrement que via le système de templates de Xcode, vous aurez peut-être à spécifier l'emplacement du dossier Satimage includes. Ce dossier est installé par défaut dans /Library/Application Support/Apple/Developer Tools/Project Templates/Satimage Sample Projects/.
Contenu du projet
Votre projet ressemble initialement à l'image suivante :
Nous vous conseillons de lancer un Build de votre projet, ceci afin de vous assurer que votre projet compile bien en l'état, avant de le modifier. Faites-le pour chaque cible du projet s'il y en a plusieurs (par exemple «NomDuProjet» et «NomDuProjet»-debug dans un projet de type SampleOsax). Vous pouvez changer la cible du projet dans le menu à choix en haut à gauche de la fenêtre principale du projet.
Les noms d'un certain nombre de fichiers et de cibles du template ont été automatiquement renommés en utilisant le nom que vous avez donné à votre nouveau projet. C'est pourquoi vous ne retrouverez pas forcément des fichiers ayant exactement les mêmes noms que ceux dont nous parlerons par la suite. Nous utiliserons parfois «NomDuProjet» pour évoquer le nom de votre nouveau projet.
En sélectionnant une cible après avoir déroulé le triangle Targets, vous pouvez afficher ses informations (menu File > Get Info). Vous pouvez alors modifier le nom de la cible dans l'onglet General et le nom du produit dans l'onglet Build.
Important : si vous modifiez le nom du produit dans l'onglet Build (paramètre Product Name), vous devez également définir avec le même nom le champ Executable dans l'onglet Properties. Autrement, vous pouvez rencontrer des difficulter à lancer ou à utiliser le produit de votre Build.
Vous pouvez ensuite renommer certains fichiers du projet si vous le désirez. Pour cela, nous vous conseillons d'utiliser le menu File > Rename de Xcode. Autrement le projet ne localisera pas vos fichiers, qui apparaitront en rouge dans la liste des sources du projet.
Pour certains de ces fichiers, modifier leur nom oblige à des modifications supplémentaires :
- le nom du fichier «NomDuProjet»_Prefix.pch apparaît dans les options de Build des cibles du projet (paramètre Prefix Header). Si vous renommez ce fichier, il faudra modifier ce paramètre en conséquence.
- le fichier «NomDuProjet».sdef n'est qu'un intermédiaire qui permet de créer le fichier de ressources «NomDuProjet».r. Si vous le renommez, il faudra également renommer le fichier «NomDuProjet».r (lequel est créé dans un dossier Resources par un script avant le linking). Les deux fichiers .sdef et .r du projet doivent porter le même nom.
Après avoir effectué ces changements, nous vous conseillons à nouveau de lancer un Build des cibles de votre projet, ce afin de détecter au plus tôt une erreur éventuelle.
Ajout de vos propres sources
Pour obtenir l'architecture finale de votre projet, il ne vous reste qu'à enlever les sources de l'exemple (par exemple les fichiers nommés Mandelbrot.cp et Mandelbrot.h dans le projet d'osax) et à rajouter vos propres sources.
Pour enlever des fichiers d'un projet, sélectionnez-les dans Xcode et utilisez le menu Edit > Delete. Pour ajouter des sources, déplacez un dossier ou des fichiers depuis Finder dans Xcode, sur la liste des sources du projet.
Vous voudrez peut-être alors mettre en commentaire les anciens appels au code d'exemple pour vérifier à nouveau que votre projet compile correctement, avant de continuer à le modifier. Les appels au code d'exemple sont situés dans le fichier «NomDuProjet».cp pour les projets d'osax, ou dans le fichier main.cp pour les projets d'applications scriptables.
Avant de lancer un Build, nous vous conseillons de faire un Clean afin de nettoyer le projet des fichiers objets liés aux fichiers que vous avez supprimés.
|