Bill Page wrote:
>
> Waldek,
>
> I have created a trac item in the Sage project to produce a new
> optional Sage package based on fricas-1.0.4
>
> http://trac.sagemath.org/sage_trac/ticket/4461
>
> I am working on this but I am having some trouble building
> fricas-1.0.4 under sage-3.1.4 from cached lisp. Perhaps I am doing
> something wrong or missing a critical step?
>
> First I built fricas-1.0.4 on my host system using gcl without
> problems. Then I ran
>
> ../fricas-src/src/scripts/mkdist.sh --copy_lisp
>
> to create the /dist directory containing the cached lisp files.
No need to do this when using release tarball -- the release
already contains cached Lisp.
> I
> copied /dist to ~/test-fricas/fricas-1.0.4 and then setup the Sage
> environment by running
>
> . ~/sage-3.1.4/local/bin/sage-env
>
> After that the clisp installed by sage starts with just the command
>
> clisp
>
> I create a directory '~/test-fricas/fricas-build' and ran configure in
> that directory with
>
> ../fricas-1.0.4/configure -with-lisp=clisp
>
> This works without problems but when I run 'make' I get an error:
<snip>
> ;; Compiling file
> /home/wspage/test-fricas/fricas-build/src/lisp/fricas-lisp.lisp ...
> *** - READ from
> #<INPUT BUFFERED FILE-STREAM CHARACTER
> #P"/home/wspage/test-fricas/fricas-build/src/lisp/fricas-lisp.lisp"
> @280>
> : there is no package with name "FFI"
> The following restarts are available:
> ABORT :R1 Abort main loop
> 0 errors, 0 warnings
> Bye.
Short anwer: you need the same patch as for fricas-1.0.3.spkg
Longer answer. clisp has special code to do dynamic FFI. At request
if (IIRC) Debian folks aroud clisp-2.43 FFI code got unbundled,
now it is in separate library called ffcall. Unfortunatly, in
the process clisp folks intruduced build problem: apparently
now clisp can use ffcall _only_ if it is installed in a system
directory (read: gcc without extra arguments can find header files
and libraries). AFAIK only Debian has ffcall as standard package,
so basically by default clisp FFI is broken on other platforms...
The simplest way to build clisp with FFI is to install libffcall
(and header files) in system directories. If for some reason this
is impossible than replacing gcc by apropriate script (which
adds correct -I /path/to/includes and -L /path/to/library arguments)
should work.
The patch I made for fricas-1.0.3.spkg allows building without
dynamic FFI. Since this makes graphic and HyperDoc unusable,
this option is really last resort -- I would very much prefer
clisp developers/builders to sort out the ffcall mess. Another
option is using static FFI -- compared to dynamic FFI static
FFI is somewhat awkward to use, so this would require extra
effort on FriCAS side (actually, the hardest part is to portably
find out where clisp is installed -- unfortunatly this information
is needed to use static FFI). I did not pursue more static FFI
direction because it seemed that other folks somewhat managed
(I write in past tense because I now realised that NetBsd folks
have the same problem) and during last year Sage folks promised
that they will fix clisp or replace it really soon...
--
Waldek Hebisch
[EMAIL PROTECTED]
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/fricas-devel?hl=en
-~----------~----~----~----~------~----~------~--~---