Page de démarrage > dev > overview > quick 
 en de es it nl pl pt pt_BR mk sq ca hu cs tr ar fa id vi ko ja ru zh zh_TW eo
Précédent  Suivant  Éditer  Renommer  Annuler  Rafraîchir  Rechercher  Administration  
Documentation
Historique
 
2. Quick Start
Je pense que le mieux est de démarrer depuis le composant sdl, qui est très petit.

Donc, supposons que vous vouliez écrire le composant gb.xyz. Ce composant: * Ne dépend d'aucun autre composant. * Nécessite la librairie libxyz.so et le fichier include xyz.h . * Requiert le multi-threading.

La variable $ROOT est le répertoire ou vous décompressez le paquet sources GAMBAS.

1. Faites une copie du répertoire $ROOT / src / lib / sdl (avec con contenu) et nommez le gb.xyz .

2. Supprimez les fichier sources , mais conservez main.c et main.h . Vous écrirez vos propres main.c et main.h en les modifiant.

3. Editez le fichier $ROOT / src / lib / xyz / Makefile.am , et remplissez le selon les besoins, comme expliqué ici.

Vous devriez avoir quelque chose comme ceci:

INCLUDES = -I$(top_srcdir)/ src / share @XYZ_INC@
EXTRA_DIST = *.component

pkglib_LTLIBRARIES = lib.gb.xyz.la

lib_gb_xyz_la_LIBADD = @XYZ_LIB@
lib_gb_xyz_la_LDFLAGS = @LD_FLAGS@

lib_gb_xyz_la_SOURCES =  main.h main.c  myFirstClass.h myFirstClass.c  mySecondClass.h mySecondClass.c  ...

install-exec-local:
        @cp -f *.component $(DESTDIR)$(pkglibdir)

4. Renommez le fichier $ROOT / src / lib / xyz / lib .gb.sdl.component en lib.gb.xyz.component et editez le. faites attention, ce fichier doit être encodé en UTF8.

[Component]
Key=gb.xyz
Name=The xyz component
Author=Vous
Alpha=1

5. Editez le fichier $ROOT / src / lib / Makefile.am (situé un répertoire plus haut) et changez la première ligne pour ajouter une référence au nouveau sous-répertoire créé.

SUBDIRS = debug eval db compress @QT_DIR@ @NET_DIR@ @SDL_DIR@ @VB_DIR@ @XYZ_DIR@

6. Editez le fichier $ROOT / configure.in et ajoutez la chose suivante :

...

GB_COMPONENT(
  xyz,
  XYZ,
  [XYZ component],
  [GB_FIND(xyz.h, / usr / local / usr , include xyz*/ include include / xyz*)],
  [GB_FIND(libxyz.$SHLIBEXT, / usr / local / usr, lib xyz*/ lib lib / xyz*)],
  [$C_LIB $THREAD_LIB -lxyz],
  [$THREAD_INC])

...

7. A la fin du fichier $ROOT / configure.in , changez la macro AC_OUTPUT :

...

dnl ---- Create makefiles

AC_OUTPUT( Makefile src / Makefile src / share / Makefile src / comp / Makefile src / exec / Makefile src / lib / Makefile ...
src /lib / compress / Makefile src / lib / compress / zlib / Makefile src / lib / compress / bzlib2 / Makefile src / lib / xyz / Makefile )

8. Ouvrez un terminal, allez dans le répertoire racine du paquetage, et tappez :

$ ./ reconf
$ ./ configure
...
$ make
...
Tout doit se compiler... si vous n'avez pas fait de faute, bien sur :-)

9. Pour tester le composant, vous devez créér trois liens symboliques depuis le répertoire ./ src / lib / xyz vers le répertoire d'installation de Gambas. Sous le compte root, bien sur :

$ su
...
# ln -s / usr / lib / gambas / lib.gb.xyz.component $ROOT / src / lib / xyz / lib.gb.xyz.component
# ln -s / usr / lib / gambas / lib.gb.xyz.so $ROOT / src / lib / xyz /.libs / lib.gb.xyz.so
# ln -s / usr / lib / gambas / lib.gb.xyz.la $ROOT / src / lib / xyz / lib.gb.xyz.la

10. Maintenant vous devez créér les fichiers description du composant en utilisant la commande gbi. Vous devez faire ceci chaque fois que vous modifiez l'interface de votre composant.

$ gbi -a
...

C'est tout. Vous devez avoir un nouveau composant maintenant :-)

Le fichier main

La connexion interpréteur

Ecriture des classes

Méthodes spéciales

Le fichier description des composants