| COMMENT 
            CREER UNE LIBRAIRIE POUR Tcl ? (Partie 1)
 (Mise à jour le 09/10/2000 
            - pour tout problèmes, remarques et suggestions contacter 
            christian.buil@wanadoo.fr). Cette page décrit comment créer 
            une librairie de fonctions écrites en langage C, pouvant 
            être appelées à partir d'un script Tcl et compatibles 
            avec le système Audela. On appelle aussi 
            une telle librairie, une extension dans le jargon Tcl. Une fois l'extension écrite, 
            ces fonctions deviennent des mots clefs utilisables depuis par exemple 
            la ligne de commande d'un logiciel comme Audace.
 L'exemple 
            choisi dans cette première partie est très basique 
            et pas nécessairement très utile. Le propos est simplement 
            ici de montrer pas-à-pas le mécanisme pour produire 
            une librairie C compatible Tcl/Tk. A partir de l'ossature de cet 
            exemple il vous sera facile de l'étendre avec vos propres 
            fonctions de calcul ou de traitement d'images.
 
 La seconde 
            partie de cet apprentissage d'écriture d'une librairie est 
            une introduction plus concrète à la mise en place 
            de fonctions de traitement d'images.
 
 Notre petite librairie 
            d'exemple ne va contenir pour l'instant que deux fonctions de calcul. 
            Vu depuis la ligne de commande de Audace par exemple elles auront 
            pour nom qm_jd 
            et qm_dms2deg. 
            La première permet de convertir une date en jour Julien, 
            la seconde permet de convertir un angle défini en degrés/minutes/secondes 
            en degrés décimaux.
 
 Basiquement, une bibliothèque 
            de fonctions C pour Tcl se présente sous la forme d'une Dynamic Link Library 
            (DLL). Le mécanisme de construction est somme toute assez 
            simple, et sera toujours similaire pour toutes les bibliothèques 
            appelées depuis Tcl. La seule petite difficulté réside 
            dans le procédure permettant d'interfacer vos fonctions C 
            avec l'interpréteur Tcl. Même si vous ne comprenez 
            pas tout ce qui suit, quelques couper/coller permettrons d'obtenir 
            le canevas de votre bibliothèque et de la faire vivre ensuite. 
            Quelques connaissances en langage C sont bien sur nécessaires. 
            L'exemple sera développé en Visual C++ version 6.0 
            (Microsoft), mais tout environnement de programmation permettant 
            de générer une DLL sous Windows pourra être 
            utilisé (les outils Borland par exemple).
 Nota : au lieu de taper toutes les lignes 
            de code qui vont suivre vous pouvez télécharger l'ensemble 
            des fichiers sources et les librairies permettant de créer 
            notre projet d'exemple en cliquant 
            ici (fichier libqm.zip 
            de 85Ko). 
            Mais un bon apprentissage nécessite 
            de faire un peu d'effort...
 Etape 1: Visual C++ 6.0
 
 Depuis l'environnement Visual C++ lancez la commande New... accessible 
            dans le menu File 
            comme le montre la figure ci-après :
 
 Etape 2: Créer le projet de librairie
 
 La boîte 
            de dialogue New 
            apparaît à l'écran. Dans l'onglet Projects sélectionnez 
            Win32 Dynamic-Link Library (voir la figure suivante). Donnez un nom à 
            la librairie à la rubrique Project 
            name. Nous allons donner le nom LIBQM 
            à la librairie (bien sur vous pouvez choisir tout autre nom, 
            ici QM 
            est l'abréviation de QuickMiPS, un programme bien connu de 
            certains utilisateurs de caméras CCD). A la rubrique Location indiquez 
            le répertoire à partir du quel va être stocker 
            votre projet. Cliquez sur OK. Dans la fenêtre d'aide qui apparaît choisissez 
            de créer une Empty DLL. Vous venez de produire l'ossature du projet.
 
  
    (1/6) |