Le toolkit Helium Copyright (C) 1996-1999 Edouard Thiel 6 février 2002 Helium est un toolkit basé sur Xlib. Ce document explique comment compiler libHelium, libHeliumGL, les exemples et les démos. ______________________________________________________________________ INSTALLATION ET COMPILATION : a) Récuperer la dernière version d'Helium : Helium-x.xx.tgz sur http://www.lif-sud.univ-mrs.fr/~thiel/helium/index.html b) "Détarer" le fichier : tar xvfz Helium-x.xx.tgz c) Aller dans le répertoire créé : cd Helium-x.xx d) Exécuter : ./Configure e) Valider chaque question par [Enter] f) Le "make all" est lancé automatiquement .. g) Quand c'est fini, essayer les démos dans demo/ et gldemo/ h) Lire le tutorial doc/tutorial/helium-tut.html ______________________________________________________________________ FOIRE AUX QUESTIONS : 1) Quelles sont les plate-formes testées ? - Linux sur PC (libc5 et glibc) - Linux sur Mac (PPC) - Sun (Solaris et SunOS) - Silicon Graphics (IRIX32 et IRIX64) - HP (il y a longtemps ..) - MacOS X + X11 - Cygwin 2) J'ai lancé ./Configure, j'ai répondu "y" partout, et la compilation s'arrête au bout d'un moment avec le message "y: No such file or directory" Attention, il ne faut pas répondre "y" à toutes les questions !! Le script vous propose chaque fois une réponse par défaut entre crochets. Pour l'accepter, il suffit d'appuyer sur Entrée. Si la réponse par défaut est "y" ou "n", il faut répondre par "y" ou "n". Sinon, ce n'est pas ce genre de réponse qui est attendue, mais plutôt une option de compilation comportant parfois un chemin. Un chemin est indiqué accolé à "-I" ou "-L". Un chemin commençant par "-I" est un chemin pour les inclusions de .h, par exemple "-I/usr/include". Un chemin commençant par "-L" indique un chemin de recherche de librairie, par exemple "-L/usr/lib". 3) Dès le début de la compilation j'ai le message "X11/Xlib.h: No such file or directory" Vous n'avez pas le bon chemin pour inclure les .h de Xlib, ou vous n'avez pas installé le package de développement sous Xlib. Commencez par vérifier que les .h de Xlib (Xlib.h, Xutil.h, etc) sont bien installés sur votre machine ; si ce n'est pas le cas, installez le package de développement sous Xlib (appelé "XFree86-devel" pour Linux), puis relancez ./Configure. Si ça ne compile toujours pas, recherchez le chemin complet de X11/Xlib.h, par exemple /usr/X11R6/include/X11/Xlib.h ; ensuite éditez le fichier ".config" et rajoutez à la fin de la ligne "CFLAGS =" votre chemin, par exemple "-I/usr/X11R6/include" ; enfin tapez "./Configure -s ; make all". 4) Ça compile un moment puis j'ai le message "ld: cannot open -lX11: No such file or directory" Vous n'avez pas le bon chemin de recherche de librairie de libX11. Cherchez le chemin complet de "libX11", par exemple "/usr/X11R6/lib/libX11.so" ; ensuite éditez le fichier ".config", et rajoutez à la fin de la ligne "LFLAGS = " votre chemin, par exemple "-L/usr/X11R6/lib" ; enfin tapez "./Configure -s ; make all". 5) A la question "Voulez-vous configurer OpenGL ou MesaGL", que se passe-t'il si je réponds "n" ? Seul libHelium, les exemples et démos sans OpenGL seront compilés. Vous pourrez toujours relancer ./Configure et recompiler Helium plus tard. 6) Si je réponds "y" à la question "Voulez-vous configurer OpenGL ou MesaGL" mais que la compilation ne va pas jusqu'au bout ? Vous ne pourrez pas vous servir de OpenGL, mais tout le reste fonctionnera correctement. Vous pouvez taper "make distclean", puis relancer ./Configure et répondre "n" pour achever une installation propre sans OpenGL. Si vous tenez à installer OpenGL, commencez par vérifier que vous avez bien installé Mesa (pour Linux, il faut les packages "Mesa", "Mesa-common" et "Mesa-devel") ; relancez ./Configure ; si la compilation ne passe pas, c'est qu'il y a un problème de chemin ou de nom de librairie. Dans votre .config vous devez avoir : GL_CFLAGS = -I/chemin_des_.h_de_Mesa/include GL_LIBS = -lMesaGL -lMesaGLU -lXext GL_LFLAGS = -L/chemin_de_MesaGL/lib Mettez les bons chemins devant -I ou -L, et vérifiez que les librairies s'appellent bien"libMesaGL*" sur votre machine ; si les libraires s'appellent par exemple "libGL*", corrigez .config dans la ligne "GL_LIBS = " en mettant "-lGL -lGLU -lXext", puis tapez "./Configure -s ; make all". 7) La compilation de la partie OpenGL a réussi ; mais quand je lance gldemo/gears, j'ai le message "can't load library 'lib*GL*'" Il y a encore un problème de chemin de librairie dynamique ; si vous venez d'installer Mesa, il faut taper "ldconfig" sous root, ou alors en tant que simple user : . sous sh/bash : export LD_LIBRARY_PATH=chemin-librairies-Mesa . sous csh/tcsh : setenv LD_LIBRARY_PATH chemin-librairies-Mesa 8) Ma question n'est pas dans le FAQ Ecrivez-moi !