compilation FreeBSD

Xcas devel: interface utilisateur/user interface

Modérateur : xcasadmin

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

compilation FreeBSD

Message par frederic han » mer. août 18, 2010 10:17 pm

Salut,

J'ai note les problemes suivant de compilation.

avec giac-0.9.0 mais (aussi certains avec 0.8.6 recente).


Sur une FreeBSD courante (8.1) (mais aussi sur une vieille)

J'ai du faire:

#if defined(__APPLE__) /* || defined(__FreeBSD__) modif fred */

dans:

rpn.cc ligne 523
et dans
help.cc ligne 744


ensuite ca compile mais ca bloquait vers la fin sur des histoires de gettext...

J'ai du ajouter les -lintl a la fin des lignes suivantes que j'ai executees manuellement dans src:


/bin/sh ../libtool --tag=CXX --mode=link g++ -I/home/fred/include -I/usr/local/include -fno-strict-aliasing -L/home/fred/lib -L/usr/local/lib -o icas icas.o libxcas.la -lreadline -lncurses -lm -lmpfr -lgmp -lgsl -lgslcblas -lrt -lpthread -lm -lmpfr -lgmp -lintl

/bin/sh ../libtool --tag=CXX --mode=link g++ -I/home/fred/include -I/usr/local/include -fno-strict-aliasing -L/home/fred/lib -L/usr/local/lib -o aide aide.o libxcas.la -lreadline -lncurses -lm -lmpfr -lgmp -lgsl -lgslcblas -lrt -lpthread -lm -lmpfr -lgmp -lintl

/bin/sh ../libtool --tag=CXX --mode=link g++ -I/home/fred/include -I/usr/local/include -fno-strict-aliasing -L/home/fred/lib -L/usr/local/lib -o xcas xcas.o libxcas.la -lgsl -lgslcblas -lrt -lpthread -lm -lmpfr -lgmp -lintl

ensuite le make se termine sans Pb.


D'autre part, je n'ai jamais construit la doc, que faut il installer pour que ca marche?

n'y a t'il pas une archive telechargeable de la doc qui permettrait une installation plus simple?
(D'habitute je bidouille a partir de xcas_root.tge ou de xcas_user.tgz)


Voila j'espere que tu arriveras a automatiser tout ca.

a+

Fred

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » jeu. août 19, 2010 7:07 am

Salut,
j'ai changé les #if defined.
Pour intl, peut-etre qu'en rajoutant

Code : Tout sélectionner

AC_CHECK_LIB(intl, main)
dans configure.in puis autoconf, ça le fera (si tu as autoconf tu peux tester).
Pour la doc, il suffit que tu aies installé latex et hevea (et les dépendances). Je vais essayer de rajouter les stamps dans la distrib pour que make install fonctionne sans avoir besoin de recompiler avec latex/hevea s'il n'y a pas de modifs.

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » jeu. août 19, 2010 1:38 pm

Oui ca a l'air de marcher.

J'ai reussi a construire la doc.

en revanche si je n'ai pas en variable LANG alors ca ne marche pas.

ls -l /usr/local/share/giac/doc/
total 14
lrwxr-xr-x 1 root wheel 11 Aug 19 11:22 aide_cas -> ../aide_cas
drwxr-xr-x 2 root wheel 1024 Aug 19 11:22 dxcas
drwxr-xr-x 4 root wheel 512 Aug 19 11:21 el
drwxr-xr-x 4 root wheel 512 Aug 19 11:21 en
drwxr-xr-x 2 root wheel 512 Aug 19 11:21 es
drwxr-xr-x 11 root wheel 512 Aug 19 11:21 fr
lrwxr-xr-x 1 root wheel 5 Aug 19 11:22 local -> ../en
drwxr-xr-x 2 root wheel 2048 Aug 19 11:22 pari
drwxr-xr-x 2 root wheel 512 Aug 19 11:22 pt

si je change le lien local vers en etnon ../en
et que en contient un lien cascmd_en vers cascmd_local alors ca marche

a+

Fred

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » jeu. août 19, 2010 2:06 pm

un petit bug de plus à corriger dans les liens alors.
Par contre c'est bizarre que ca ne marche pas en francais; chez moi j'ai
export LANG=fr_FR.utf8

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » jeu. août 19, 2010 4:10 pm

Re salut,

je me suis mal exprime,

le probleme ne survient que si l'on n'a pas de LANG, alors on n'a pas de doc du tout a cause du mauvais lien.

mais avec LANG=fr_FR ca marche tres bien en francais.
idem avec LANG=en_US et ...

a+

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » jeu. août 19, 2010 4:38 pm

ah, ok, donc juste un petit pb de liens facile à corriger.

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » jeu. août 26, 2010 1:10 pm

Salut,

j'essaye de faire un paquet pour freeBSD avec ces modifs ca a l'air de marcher. Aurais tu une version de giac-0.9.0.tgz qui les incorpore comme ca je pourrai la sauver (pour les checksum).

Fred

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » jeu. août 26, 2010 1:29 pm

Salut!

je ne peux le faire que lundi prochain, le temps que je repasse par la fac. Il y aura quelques additions, changements, plutot en algebre lineaire numerique (forme de Hessenberg avec matrice de passage orthogonale, et de Schur). Sinon, tu as essayé s'il y avait des problèmes avec tes feuilles de calcul?
a+

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » jeu. août 26, 2010 4:00 pm

OK. ca n'est pas urgent.

Pour le port, j'ai pris la version courante de CoCoaLib et la version de fltkdev.tgz de ton site que je compile en statique pour giac. Est ce OK, ou est ce qu'il vaut mieux une autre version de fltk?

La doc commence maintenant par un gros index, c'est bien voulu?

Pour la licence j'ai mis GPLv3, faut il ajouter autre chose?


J'ai teste les TP 2010 (22) sans plantages, les reponses ont l'air correctes, et sont en tout cas identiques a celles donnees par 0.8.6 actuel.

TP17 me semble plus rapide. (gros calculs formels entiers multivariable)

Tout ce que j'ai remarque est:

implicitplot est parfois moins joli qu'avec 0.8.6 (ie plus incomplet):

TP19

P:=-4*x^4+5*x^3*y+19*x^3+8*x^2*y^2-34*x^2*y-26*x^2+6*x*y^3-30*x*y^2+61*x*y+11*x+y^4-8*y^3+23*y^2-32*y

DP:=implicitplot(P,x=-1..4,y=-4..4,xstep=0.01,ystep=0.01,couleur=blue+line_width_3);

Warning! Could not loop or reach boundaries -3.935467607+4.939378049*y+18.76963659+7.935205209*y^2-33.72462214*y-25.78941693+5.975652553*y^3-29.87826277*y^2+60.75246763*y+10.95536301+y^4-8*y^3+23*y^2-32*y
Evaluation time: 1.875


sinon dans TP8 avec les 2 versions le bouton dans la geometrie affiche trop de decimales, ca devient illisible.

a+

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » jeu. août 26, 2010 6:37 pm

frederic han a écrit :OK. ca n'est pas urgent.

Pour le port, j'ai pris la version courante de CoCoaLib et la version de fltkdev.tgz de ton site que je compile en statique pour giac. Est ce OK, ou est ce qu'il vaut mieux une autre version de fltk?
Si c'est l'archive

Code : Tout sélectionner

-rw-r--r-- 1 parisse ensch 6391860 2010-03-31 14:35 fltkdev.tgz
alors ca doit etre bon.
La doc commence maintenant par un gros index, c'est bien voulu?
il faudra que je revérifie si c'est dans le latex ou si c'est hevea qui fait ça, c'est vrai que la table des matières serait sans doute mieux
Pour la licence j'ai mis GPLv3, faut il ajouter autre chose?
oui pour le soft, et la licence de la doc est affichée dans la doc.
J'ai teste les TP 2010 (22) sans plantages, les reponses ont l'air correctes, et sont en tout cas identiques a celles donnees par 0.8.6 actuel.
bon, c'est rassurant. Il faudrait peut-etre les exporter en suite de commandes et les rajouter en tests de régression, si tu es d'accord.
TP17 me semble plus rapide. (gros calculs formels entiers multivariable)
la rapidité du PGCD mutivariables est un des progrès de la version 0.9.0 (normalement le PGCD est aussi rapide que magma en rationnel, je n'ai pas testé si les coeffs sont dans des extensions algébriques, mais c'est surement là que l'évolution est la plus nette par rapport à 0.8.6 car je suis passé à un algorithme modulaire).
Tout ce que j'ai remarque est:

implicitplot est parfois moins joli qu'avec 0.8.6 (ie plus incomplet):

TP19

P:=-4*x^4+5*x^3*y+19*x^3+8*x^2*y^2-34*x^2*y-26*x^2+6*x*y^3-30*x*y^2+61*x*y+11*x+y^4-8*y^3+23*y^2-32*y

DP:=implicitplot(P,x=-1..4,y=-4..4,xstep=0.01,ystep=0.01,couleur=blue+line_width_3);
je regarderai, c'est bizarre car il ne me semble pas avoir changé quoi que ce soit...
sinon dans TP8 avec les 2 versions le bouton dans la geometrie affiche trop de decimales, ca devient illisible.

a+
ok, à regarder aussi la semaine prochaine.
a+

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » ven. août 27, 2010 10:53 pm

J'ai mis une archive des TP2010 la:
http://people.math.jussieu.fr/~han/agreg/tests-fhan.tgz
j'ajoute de temps en temps quelques tests avec des print pour dire si c'est correct, mais ca n'est pas vraiment des fichiers de test. D'habitude je controle visuellement avec xcas.

Par exemple, les output n'ont pas forcement une ecriture unique ...


A ameliorer.

a+

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » lun. août 30, 2010 11:57 am

salut!
je viens de mettre a jour l'archive de la 0.9.0, j'y ai incorpore tes scripts avec quelques corrections (essentiellement des point-virgules manquant et parentheses non fermees dans les commentaires qui provoquent des erreurs de syntaxe parce que le mecanisme de fermeture auto de parentheses de xcas ne reconnait pas les commentaires). J'ai eu a nouveau un pb avec la conversion des entiers de pari vers xcas, du coup dans pari.cc j'ai mis un commentaire qui indique que selon l'ordre l'un des 2 morceaux de codes fonctionne, il faudra peut-etre que tu choisisses l'autre ordre selon ta version de pari.
Pour lancer les tests tu tapes
./chk_fhan
dans check, je ne les ai pas encore integre a make check.
Je pense qu'il sera interessant de verifier au fur et a mesure que les fichiers de sortie sont corrects (apres avoir aussi enleve des time), apres on pourra les integrer dans make check.

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » lun. août 30, 2010 1:40 pm

Salut,

pour l'instant la compilationne marche plus:

gmake[1]: Entering directory `/usr/ports/math/giacxcas/work/giac-0.9.0'
Making all in src
gmake[2]: Entering directory `/usr/ports/math/giacxcas/work/giac-0.9.0/src'
/bin/sh ../libtool --tag=CXX --mode=compile c++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/usr/ports/math/giacxcas/work/fltk-1.3.x-r6916 -I/usr/ports/math/giacxcas/work/CoCoALib-0.9937/include -I/usr/local/include -O2 -pipe -fno-strict-aliasing -I/usr/local/include -fno-strict-aliasing -MT rpn.lo -MD -MP -MF .deps/rpn.Tpo -c -o rpn.lo rpn.cc
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -I/usr/ports/math/giacxcas/work/fltk-1.3.x-r6916 -I/usr/ports/math/giacxcas/work/CoCoALib-0.9937/include -I/usr/local/include -O2 -pipe -fno-strict-aliasing -I/usr/local/include -fno-strict-aliasing -MT rpn.lo -MD -MP -MF .deps/rpn.Tpo -c rpn.cc -fPIC -DPIC -o .libs/rpn.o
rpn.cc:977: error: expected unqualified-id before numeric constant
rpn.cc:978: error: lvalue required as unary '&' operand
rpn.cc:1378: error: explicit qualification in declaration of 'giac::_concat_CONCAT1_s'
rpn.cc:1378: error: 'giac::_concat_CONCAT1_s' declared as reference but not initialized
rpn.cc:1379: error: '__CONCAT1' was not declared in this scope
gmake[2]: *** [rpn.lo] Error 1
gmake[2]: Leaving directory `/usr/ports/math/giacxcas/work/giac-0.9.0/src'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/math/giacxcas/work/giac-0.9.0'
gmake: *** [all] Error 2

t'as une idee?
Fred

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: compilation FreeBSD

Message par parisse » lun. août 30, 2010 1:53 pm

Non, peut-etre qu'il y a des define dans les headers de FreeBSD qui rentrent en conflit. Essaie peut-etre de rajouter un _ ou un 0 a la fin des noms de variables.

frederic han
Messages : 1137
Inscription : dim. mai 20, 2007 7:09 am
Localisation : Paris
Contact :

Re: compilation FreeBSD

Message par frederic han » lun. août 30, 2010 7:19 pm

oui ca a l'air d'etre ca.

J'ai fait:

const unary_function_eval __SIGN0(&giac::sign,_SIGN_s);
const unary_function_ptr at_SIGN (&__SIGN0,0,true);


et ca:

const string _CONCAT1_s0("CONCAT");
const unary_function_eval __CONCAT10(&giac::_concat,_CONCAT1_s0);
const unary_function_ptr at_CONCAT10 (&__CONCAT10,0,true);


et ca compile.

je pense que le probleme vient de la:

sys/cdef.h

http://freebsd.active-venture.com/FreeB ... efs.h.html


du coup j'ai trouve un pb dans det. (grandes matrices entieres)

http://people.math.jussieu.fr/~han/xcas/testdet.cas

a+

Fred

Répondre