Re: Petite question au sujet de l'installation d'openGL / GLUT
Le
Sylvain SAUREL
En fait, j'ai utilisé la ligne de compilation qui nous a été=
fourni en TP par le prof.
Apparemment il disait qu'il fallait linker avec les librairies en rapport a=
vec le serveur X.
Mais je viens d'essayer sans et effectivement ça marche bien.
Quel est l'intérêt de linker avec les librairies en rapport avec =
le serveur X (je pensais que c'était pour le fenêtrage mais appar=
emment ça marche sans) ? Dans quel cas le faire ou ne pas le faire alo=
rs ?
Merci d'avance.
> Message du 19/09/05 23:08
> De : "Simon BZ" <siborgz@gmail.com>
> A : debian-user-french@lists.debian.org
> Copie à :
> Objet : Re: Petite question au sujet de l'installation d'openGL / GLUT
>
> On 9/19/05, Sylvain SAUREL <sylvain.saurel@wanadoo.fr> wrote:
> >
> > Bonjour,
> >
> > Je suis en train d'essayer d'installer glut et openGL sur ma debian Sar=
ge
> > 3.1
> > Pour glut, j'ai pris les packages via l'utilitaire apt-get.
> >
> > J'ai crée un petit programme en C se servant de glut et d'openGL p=
our
> > tester le tout :
> >
> > #include <GL/glut.h>
> >
> > void affichage(void)
> > {
> > glClear(GL_COLOR_BUFFER_BIT);
> > glFlush();
> > }
> >
> > void redim(int width, int height)
> > {
> > glViewport(0, 0, width, height);
> > }
> >
> > int main(int argc, char **argv)
> > {
> > glutInit(&argc,argv);
> > glutInitWindowSize(400,400);
> > glutWindowPosition(200,100);
> > glutInitDisplayMode(GLUT_RGBA | GLUT_SINGLE);
> >
> > glutCreateWindow("Fenetre 1");
> >
> > glutDisplayFunc(affichage);
> > glutReshapeFunc(redim);
> >
> > glutMainLoop();
> >
> > return 0;
> > }
> >
> >
> > Pour compiler j'utilise la ligne suivante :
> >
> > gcc -o prog prog1.c -lglut -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm
> >
> > La, j'obtiens l'erreur suivant à l'édition des liens :
> >
> > /usr/bin/ld: ne peut trouver -lXmu
> > collect2: ld a retourné 1 code d'état d'exécution
> >
> >
> > J'ai donc chercher les librairies pouvant être en rapport avec Xmu=
avec
> > apt-cache search et j'ai installé toutes celles en rapport mais j'=
ai
> > toujours le même problème à l'édition des liens.
> >
> > Est-ce que quelqu'un pourrait me dire ce que je dois modifier ou instal=
ler
> > en plus pour que l'édition des liens se passe correctement ?
> > Et pour openGL, j'aimerais savoir les packages que vous me conseillez p=
our
> > une installation normale ?
> >
> > Merci d'avance de votre aide.
>
>
> Pourquoi veux-tu linker avec Xmu pour ton application ?
>
> Avec ce que je vois, seuls -lglut et -lGL semble être nécessair=
es à la
> compilation de
> ton programme à ce stade. Si tu as bien installé openGL et glut=
, ça devrait
> compiler !
>
fourni en TP par le prof.
Apparemment il disait qu'il fallait linker avec les librairies en rapport a=
vec le serveur X.
Mais je viens d'essayer sans et effectivement ça marche bien.
Quel est l'intérêt de linker avec les librairies en rapport avec =
le serveur X (je pensais que c'était pour le fenêtrage mais appar=
emment ça marche sans) ? Dans quel cas le faire ou ne pas le faire alo=
rs ?
Merci d'avance.
> Message du 19/09/05 23:08
> De : "Simon BZ" <siborgz@gmail.com>
> A : debian-user-french@lists.debian.org
> Copie à :
> Objet : Re: Petite question au sujet de l'installation d'openGL / GLUT
>
> On 9/19/05, Sylvain SAUREL <sylvain.saurel@wanadoo.fr> wrote:
> >
> > Bonjour,
> >
> > Je suis en train d'essayer d'installer glut et openGL sur ma debian Sar=
ge
> > 3.1
> > Pour glut, j'ai pris les packages via l'utilitaire apt-get.
> >
> > J'ai crée un petit programme en C se servant de glut et d'openGL p=
our
> > tester le tout :
> >
> > #include <GL/glut.h>
> >
> > void affichage(void)
> > {
> > glClear(GL_COLOR_BUFFER_BIT);
> > glFlush();
> > }
> >
> > void redim(int width, int height)
> > {
> > glViewport(0, 0, width, height);
> > }
> >
> > int main(int argc, char **argv)
> > {
> > glutInit(&argc,argv);
> > glutInitWindowSize(400,400);
> > glutWindowPosition(200,100);
> > glutInitDisplayMode(GLUT_RGBA | GLUT_SINGLE);
> >
> > glutCreateWindow("Fenetre 1");
> >
> > glutDisplayFunc(affichage);
> > glutReshapeFunc(redim);
> >
> > glutMainLoop();
> >
> > return 0;
> > }
> >
> >
> > Pour compiler j'utilise la ligne suivante :
> >
> > gcc -o prog prog1.c -lglut -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm
> >
> > La, j'obtiens l'erreur suivant à l'édition des liens :
> >
> > /usr/bin/ld: ne peut trouver -lXmu
> > collect2: ld a retourné 1 code d'état d'exécution
> >
> >
> > J'ai donc chercher les librairies pouvant être en rapport avec Xmu=
avec
> > apt-cache search et j'ai installé toutes celles en rapport mais j'=
ai
> > toujours le même problème à l'édition des liens.
> >
> > Est-ce que quelqu'un pourrait me dire ce que je dois modifier ou instal=
ler
> > en plus pour que l'édition des liens se passe correctement ?
> > Et pour openGL, j'aimerais savoir les packages que vous me conseillez p=
our
> > une installation normale ?
> >
> > Merci d'avance de votre aide.
>
>
> Pourquoi veux-tu linker avec Xmu pour ton application ?
>
> Avec ce que je vois, seuls -lglut et -lGL semble être nécessair=
es à la
> compilation de
> ton programme à ce stade. Si tu as bien installé openGL et glut=
, ça devrait
> compiler !
>

Poser une question


^^^
zut, ça commençait bien ;o)
Il faut lier une bibliothèque seulement lorsque l'on s'en sert. (Lier
des bibliothèques non utilisées ne gêne pas : cela fait juste du code mort
(beaucoup si statique, peu si dynamique).)
Se servir d'une bibliothèque signifie utiliser des fonctions qu'elle
met en œuvre. En clair, cela veut dire qu'il y un #include part, avec toto.h qui représente une interface à la bibliothèque
(déclaration des fonctions et structures).
Pour la libXmu, toto.h serait quelque chose comme X11/Xmu/toto.h
--
Sylvain Sauvage
--
Pensez