Page 1 sur 1

[Résolu] Problème de compilation

MessagePosté: Samedi 06 Février 2010, 16:03
par alekhine
Bo,jour,

j'essaie de compiler asymptote1.90 sur Mac OSX, mais avec make install, je finis par obtenir le message d'erreur suivant :

Code: Tout sélectionner
c-7.1/include -o runhistory.o -c runhistory.cc
runhistory.in: In function ‘void store_history(HISTORY_STATE*)’:
runhistory.in:44: error: ‘struct HISTORY_STATE’ has no member named ‘entries’
runhistory.in:44: error: ‘struct HISTORY_STATE’ has no member named ‘entries’
runhistory.in: In function ‘void run::cleanup()’:
runhistory.in:104: error: ‘history_set_history_state’ was not declared in this scope
runhistory.in:108: error: ‘history_set_history_state’ was not declared in this scope
runhistory.in: In function ‘void run::gen_runhistory0(vm::stack*)’:
runhistory.in:131: error: ‘history_set_history_state’ was not declared in this scope
runhistory.in: In function ‘void run::gen_runhistory2(vm::stack*)’:
runhistory.in:173: error: ‘history_set_history_state’ was not declared in this scope
runhistory.in: In function ‘void run::gen_runhistory3(vm::stack*)’:
runhistory.in:213: error: ‘history_set_history_state’ was not declared in this scope
make: *** [runhistory.o] Error 1


Et là je ne sais absolument pas quoi faire.
Merci.

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 11:30
par gigiair
Il n'y a pas eu d'erreur dans l'exécution du ./configure ?

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 14:08
par alekhine
Non, pas d'erreur.
J'ai déjà la version 1.85 installée, donc je pense que j'ai toutes les dépendances.

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 15:09
par GMaths
alekhine a écrit:Non, pas d'erreur.
J'ai déjà la version 1.85 installée, donc je pense que j'ai toutes les dépendances.

Sauf que la 1.85 date de six mois... et que, si on est à la 1.92SVN, c'est que John Bowman a apporté des modifications... parfois liées à des évolutions de dépendances. ;-)

Quand tu as ce genre de problème, n'oublie pas le forum officiel d'Asymptote.
Je n'ai pas de mac mais une recherche, sur le dit-forum, sur le mot runhistory, m'a donné cela :
http://sourceforge.net/projects/asymptote/forums/forum/409349/topic/3387231

;-)

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 20:16
par gigiair
Il y a un fil sur ce sujet sur le forum propre à Asymptote.
Asymptote 1.91 Install error on OS X 10.6
C'est le meilleur endroit pour poser ta question. (déjà signalé par Gmath)

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 20:24
par GMaths
gigiair a écrit:(déjà signalé par Gmath)
oui, et tu n'as pas regardé mon lien... car le mien parle de l'erreur qu'il rencontre et pas le tien. :lol:

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 21:11
par gigiair
GMaths a écrit:
gigiair a écrit:(déjà signalé par Gmath)
oui, et tu n'as pas regardé mon lien... car le mien parle de l'erreur qu'il rencontre et pas le tien. :lol:

J'avoue ne pas avoir suivi ton lien. J'ai juste vu qu'il pointait sur le bon endroit pour traiter ce genre de problème. Honte sur moi :oops: .
De toute façon quand on se lance dans la compilation, il faut avoir un minimum d'autonomie. Les mackintosheurs qui compilent asymptote, il ne doit pas y en avoir des masses sur ce forum.

Re: [asy] Problème de compilation

MessagePosté: Dimanche 07 Février 2010, 22:04
par alekhine
Merci à vous deux pour votre aide.
J'avais moi aussi rentré des mots-clé dans le moteur de recherche, mais je suis tombé sur des pages qui ne m'ont pas sorti de l'ornière.
Pour résumer le problème, c'est effectivement un problème de dépendance. C'est la bibliothèque readline qui n'était pas à jour. Mais l'erreur est pour moi moins facile à décrypter que quand la bibliothèque est carrément manquante.
Encore merci :D

Re: [asy] Problème de compilation

MessagePosté: Lundi 08 Février 2010, 17:45
par projetmbc
Bonjour.

Qu'as-tu fait concrètement ?

Re: [résolu][asy] Problème de compilation

MessagePosté: Lundi 08 Février 2010, 18:09
par alekhine
D'abord tu télécharges asymptote1.90 http://archive.hmug.org/X/Applications/Publishing/asymptote/. Les fichiers sont configurés pour Mac, ça diminue les problèmes.
Ensuite tu compiles :
Code: Tout sélectionner
./configure
sudo make install
dans le répertoire d'asymptote.
S'il te manque une dépendance une erreur apparaît lors de l'exécution de ./configure. Elle se trouve dans le README à l'adresse ci-dessus. Il faut alors l'installer en suivant la même procédure que pour asymptote. Tu exécutes à nouveau ./configure puis make install s'il n'y a plus d'erreur.

Dans le cas précis de l'erreur que j'ai rencontrée pour asymptote 1.90, c'est la dépendance readline qui n'était pas à jour. L'erreur est apparue à l'exécution du make install.
J'ai donc installé la nouvelle dépendance en suivant la même procédure que ci-dessus mais lors de l'exécution de ./configure pour asymptote il faut le remplacer par :
Code: Tout sélectionner
./configure LDFLAGS=-L/usr/local/lib/

afin qu'il aille chercher la dépendance au bon endroit.

Voilà.
Je dois reconnaître que pour utiliser asymptote sous Mac, il faut vraiment le vouloir ! D'autant que je n'y connais pas grand chose.
A chaque mise à jour, son problème...

Je viens de m'apercevoir que tu es déjà sous Mac et que tu utilises asymptote. Toute la procédure n'a donc pas de secret pour toi :) . A moins que tu n'aies une autre façon d'installer asymptote, et là ça m'intéresse :wink:

Re: [Résolu][Asymptote] Problème de compilation

MessagePosté: Lundi 08 Février 2010, 19:21
par projetmbc
alekhine a écrit:Je viens de m'apercevoir que tu es déjà sous Mac et que tu utilises asymptote. Toute la procédure n'a donc pas de secret pour toi.

Oui et non car j'ai la procédure pour Leopard et non pour Snow Leopard.

alekhine a écrit:A moins que tu n'aies une autre façon d'installer asymptote, et là ça m'intéresse :wink:

Non malheureusement. C'est le seul reproche que j'ai à faire à Asymptote : sa difficulté d'installation sous Mac...

Merci pour les détails.

Re: [Résolu][Asymptote] Problème de compilation

MessagePosté: Jeudi 25 Février 2010, 11:22
par projetmbc
Je viens d'installer Snow Leopard vierge de toutes applications. J'ai testé les indications ci-dessus et cela fonctionne sans souci.

Pas trop compliqué à suivre, un peu plus dur est de trouver les erreurs quand on ne développe pas en C.

Re: [Résolu][Asymptote] Problème de compilation

MessagePosté: Jeudi 25 Février 2010, 17:51
par projetmbc
Si quelqu'un passe par ici à la recherche de la méthode de compilation d'Asymptote sous Mac OS 10.5 ou 10.6, voici un résumé détaillé :

===================================
Installation d'Asymptote sur un Macintosh
===================================

Avant toute chose, il faut savoir que ¨asymptote utilise ¨latex. Il faudra donc avoir une installation ¨latex : se reporter à cf::``/minimum.txt`` si besoin.

Les procédures suivantes sont celles que j'ai pu trouvé sur le net. Peut-être que vous avez plus simple, dans ce cas n'hésitez pas à me le faire savoir.

**Remarque :** la méthode indiquée pour **Snow Leopard** devrait s'adapter au fichier **asymptote-<ver>-osx5-x86.tar.gz**, sans avoir à gérer la bibliothèque ``readline`` qui pose problème sous **Snow Leopard**. Si vous testez avec succès cette méthode, faites moi signe...

------------------------------
Avec Leopard ou OS 10.5
------------------------------

Il faut passer par cette extraordinaire boîte noire qu'est la console. Nous reprenons ci-dessous des explications données dans cf::``cette page ; http://www.artofproblemsolving.com/Wiki ... _Macintosh``. << L'ordre des opérations est à respecter. >>

0) Il faut que **XCode** soit installé sur votre ¨mac. Si cela n'est pas déjà fait, il faudra le faire via votre DVD d'installation de ¨mac. Nous pourrons ainsi compiler le code ¨c de ¨asymptote.

1) Téléchargez le fichier **asymptote<ver>.src.tgz** sur cf::``cette page ; http://sourceforge.net/projects/asymptote/file``, puis décompressez le avec par exemple le gratuiciel ¨unarchiver. Une fois la compilation achevée, vous pourrez détruire ce dossier qui ne sera plus d'aucune utilité.

2) Pour finir, il va falloir taper dans le Terminal les cinq lignes ci-dessous les unes après les autres. Dans la ¨1ere ligne, il suffit de taper ``cd``, puis ensuite de faire un glisser-déposer après avoir cliqué sur le dossier décompressé **asymptote<ver>** pour insérer **chemin_vers_AsymptoteDecompresse** le chemin complet du dossier décompressé **asymptote<ver>**.

Code: Tout sélectionner
      cd chemin_vers_AsymptoteDecompresse
      curl -O http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.1.tar.gz
      ./configure
      make all
      sudo make install



-------------------------------------
Avec Snow Leopard ou OS 10.6
-------------------------------------

Les explications ci-dessous sont directement issues de cf::``cette page ; post99975.html?hilit=asymptote%20compilation%20mac``. << L'ordre des opérations est à respecter. >>

0) Il faut que **XCode** soit installé sur votre ¨mac. Si cela n'est pas déjà fait, il faudra le faire via votre DVD d'installation de ¨mac. Nous pourrons ainsi compiler le code ¨c de ¨asymptote.

1) Téléchargez le fichier **asymptote-<ver>-osx6-x86.tar.gz** sur cf::``cette page ; http://archive.hmug.org/X/Applications/ ... asymptote/``, puis cherchez le lien ``README.asymptote-<ver>-osx6-x86.html``. Vous pourrez ainsi télécharger ``readline`` qui est nécessaire au bon fonctionnement de la compilation. Décompresser les deux dossiers téléchargés, ces derniers pourront être détruits une fois les compilations achevées.

2) On commence par taper dans le Terminal les quatre lignes ci-dessous les unes après les autres afin de compiler ``readline``. Dans la ¨1ere ligne, il suffit de taper ``cd``, puis ensuite de faire un glisser-déposer après avoir cliqué sur le dossier décompressé **readline** pour insérer **chemin_vers_readline_decompresse** le chemin complet du dossier décompressé **readline**.

Code: Tout sélectionner
      cd chemin_vers_readline_decompresse
      ./configure
      make all
      sudo make install


3) Pour finir, on compile **asymptote<ver>** via les quatre lignes ci-dessous à taper dans cet ordre dans le Terminal.

Code: Tout sélectionner
      cd chemin_vers_asymptote_decompresse
      ./configure LDFLAGS=-L/usr/local/lib/
      make all
      sudo make install