Installation logiciel en ligne de commande (problème de make)

Résolu/Fermé
in_die Messages postés 52 Date d'inscription mardi 26 juin 2012 Statut Membre Dernière intervention 18 juillet 2019 - 13 nov. 2015 à 14:04
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 15 nov. 2015 à 21:13
Bonjour tout le monde,
je souhaite installer le logiciel surface evolver sur ubuntu 14.04, mais la logithèque ubuntu ne propose que la version 2.3 qui est trop ancienne pour mes besoins au travail. Donc j'ai téléchargé "evolver-2.70.tar.gz" et procédé aux instructions, mais impossible de l'installer.
Au make, j'obtiens

avec le choix "Start of system choices"
<
:src$ make
gcc -O3 -DGENERIC calcforc.o variable.o trirevis.o stringl.o stringq.o model.o fixvol.o query.o matrix.o grapher.o painter.o filml.o filmq.o torvol.o lexinit.o graphgen.o modify.o userio.o boundary.o curtest.o display.o yexparse.o lexyy.o ytab.o hessian.o evaltree.o cnstrnt.o verpopst.o popfilm.o machine.o veravg.o pixgraph.o tmain.o tordup.o wulff.o help.o psgraph.o check.o utility.o skeleton.o storage.o dump.o iterate.o filgraph.o zoom.o softimag.o mvgraph.o diffuse.o sqcurve.o klein.o command.o hidim.o simplex.o metric.o torus.o quotient.o alice.o sdrv.o odrv.o userfunc.o kusner.o simequi2.o geomgraph.o symtable.o exprint.o quantity.o meanint.o mindeg.o dodecGroup.o registry.o khyp.o gauss.o knot1.o eval_all.o lexinit2.o evalmore.o knot2.o knot3.o teix.o sqcurve2.o hessian2.o hessian3.o method1.o method2.o method3.o bk.o method4.o method5.o eval_sec.o sqcurve3.o metis.o lagrange.o nulgraph.o -o evolver -lm
evalmore.o: dans la fonction « more_other_stuff »:
evalmore.c:(.text+0x87f7): référence indéfinie vers « set_graphics_title »
evalmore.c:(.text+0x89e0): référence indéfinie vers « set_graphics_title »
evalmore.c:(.text+0x89f4): référence indéfinie vers « set_graphics_title »
collect2: error: ld returned 1 exit status
make: *** [evolver] Erreur 1
>

avec le choix "Generic Unix"
<:src$ make
gcc -O3 -DGENERIC -c xgraph.c
xgraph.c:56:22: fatal error: X11/Xlib.h: Aucun fichier ou dossier de ce type
#include <X11/Xlib.h>
^
compilation terminated.
make: *** [xgraph.o] Erreur 1
>

Pouvez vous m'aider à l'installer svp, j'en ai besoin pour mon travail.
Sinon, y a t-il un moyen de faire remonter l'info à la logithèque Ubuntu, afin qu'une version plus récente soit disponible?

Dans l'attente de votre aide.
Merci par avance.

indie
A voir également:

3 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 14/11/2015 à 18:19
Au vu du message
xgraph.c:56:22: fatal error: X11/Xlib.h: Aucun fichier ou dossier de ce type
#include <X11/Xlib.h>

installe déjà les fichiers en-tête de X11:
Sous ma Debian :
johand@bata:~/www/data/sqlite$ dpkg -S $(locate X11/Xlib.h)
libx11-dev:amd64: /usr/include/X11/Xlib.h


Sous Ubuntu, tu installeras donc libx11-dev avec une commande du genre:
 sudo apt-get install libx11-dev
. Ceci ne garantissant bien entendu aucunement l'absence d'autres packages de développement.
Notons que sous ma Debian Stretch , une recherche me donne ceci:
johand@bata:~/www/data/sqlite$ apt-cache show evolver
Package: evolver
Version: 2.30c.dfsg-3
...

Essaye de trouver un dépôt qui contient une version debianisée du logiciel adaptée à tes besoins(backports...).

Si j'ai le temps , je compilerai depuis les sources afin d'examiner les besoins pour la compilation.
man apt-cache; man dpkg
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 15/11/2015 à 10:33
J'examine la situation avec les options "Linux Xwindows"

J'ai eu une erreur concernant un membre non défini de lstruct webstruct. Jai ajouté à tout hasard un int hide_flag dans web.h.
johand@bata:~/src/evolver-2.70/src$ diff web.h web_org.h
199,200c199
< int hide_flag;
< };
---
> }
;

J'obtiens en fin de make l'erreur suivante:

make -k
gcc -O3 -DLINUX -DOOGL calcforc.o variable.o trirevis.o stringl.o stringq.o model.o fixvol.o query.o matrix.o grapher.o painter.o filml.o filmq.o torvol.o lexinit.o graphgen.o modify.o userio.o boundary.o curtest.o display.o yexparse.o lexyy.o ytab.o hessian.o evaltree.o cnstrnt.o verpopst.o popfilm.o machine.o veravg.o pixgraph.o tmain.o tordup.o wulff.o help.o psgraph.o check.o utility.o skeleton.o storage.o dump.o iterate.o filgraph.o zoom.o softimag.o mvgraph.o diffuse.o sqcurve.o klein.o command.o hidim.o simplex.o metric.o torus.o quotient.o alice.o sdrv.o odrv.o userfunc.o kusner.o simequi2.o geomgraph.o symtable.o exprint.o quantity.o meanint.o mindeg.o dodecGroup.o registry.o khyp.o gauss.o knot1.o eval_all.o lexinit2.o evalmore.o knot2.o knot3.o teix.o sqcurve2.o hessian2.o hessian3.o method1.o method2.o method3.o bk.o method4.o method5.o eval_sec.o sqcurve3.o metis.o lagrange.o xgraph.o -L/usr/X11R6/lib -lX11 -o evolver -lm
evalmore.o: dans la fonction « more_other_stuff »:
evalmore.c:(.text+0x852e): référence indéfinie vers « set_graphics_title »
evalmore.c:(.text+0x856a): référence indéfinie vers « set_graphics_title »
evalmore.c:(.text+0x857e): référence indéfinie vers « set_graphics_title »
collect2: error: ld returned 1 exit status
Makefile:233: recipe for target 'evolver' failed
make: *** [evolver] Error 1


set_graphics est défini dans glutgraph.c. Je l'ajoute donc glutgraph.o dans la liste OBJ
Ce qui donne:make -k
gcc -O3 -DLINUX -DOOGL -c glutgraph.c
glutgraph.c: In function `glut_catcher':
glutgraph.c:2066:11: error: `SIGKICK' undeclared (first use in this function)
signal(SIGKICK,glut_catcher);
^
glutgraph.c:2066:11: note: each undeclared identifier is reported only once for each function it appears in
glutgraph.c: In function `draw_thread':
glutgraph.c:2100:20: warning: implicit declaration of function `pthread_self' [-Wimplicit-function-declaration]
draw_thread_id = pthread_self(); /* get thread id */
^
glutgraph.c:2103:3: warning: implicit declaration of function `pthread_setspecific' [-Wimplicit-function-declaration]
pthread_setspecific(thread_data_key,(void*)&glutgraph_thread_data);
^
glutgraph.c:2103:23: error: `thread_data_key' undeclared (first use in this function)
pthread_setspecific(thread_data_key,(void*)&glutgraph_thread_data);
^
glutgraph.c:2288:11: error: `SIGKICK' undeclared (first use in this function)
signal(SIGKICK,glut_catcher);
^
glutgraph.c: In function `display':
glutgraph.c:3405:22: error: `SIGKICK' undeclared (first use in this function)
kill(draw_pid,SIGKICK); /* unix version of kick */
^
Makefile:244: recipe for target 'glutgraph.o' failed
make: *** [glutgraph.o] Error 1
make: Target 'evolver' not remade because of errors


A ce point, il faut commencer une recherche sur le fond. Il y a des SIG* que je ne connais pas et qui ne sont pas référencés sur le net.
Un conseil :installe et lis la documentation de apt-file, mets la base de données associée à jour.

N'as-tu pas trouvé un rapport de compilation/constuction de cette version ?
Je continue mes recherches.

Bon amusement.
0
in_die Messages postés 52 Date d'inscription mardi 26 juin 2012 Statut Membre Dernière intervention 18 juillet 2019
14 nov. 2015 à 18:36
Merci pour ta réponse.

En effet, entre temps j'avais installé la librairie, mais ca ne marche toujours pas:

:src$ make
gcc -O3 -DGENERIC -I/usr/include/X11 -c xgraph.c
xgraph.c: In function `xgraph_facet':
xgraph.c:247:11: error: `struct webstruct' has no member named `hide_flag'
if ( web.hide_flag && (t->color != CLEAR) && (t->color != UNSHOWN) )
^
make: *** [xgraph.o] Erreur 1


une idée?
0
in_die Messages postés 52 Date d'inscription mardi 26 juin 2012 Statut Membre Dernière intervention 18 juillet 2019
15 nov. 2015 à 10:48
Merci beaucoup pour toute votre aide.

J'ai contacté le développeur, problème résolu!

En compilant avec Linux OpenGL, il faut d'abord supprimer les *.o qui sont liés à l'option -DPTHREADS.

Voilà :)
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 15/11/2015 à 21:13
Content pour toi. Comme mathématicien je vais étudier cela en détail.
Du coup merci !!!
0