On Thu, May 25, 2023 at 12:11:05PM -0600, Jonathan Drews wrote:
> On Thu, May 25, 2023 at 03:23:23PM +0200, Dima Pasechnik wrote:
> >
> > Can you also add building maxima.fas and installing it into
> > /usr/local/lib/ecl/ ?
> > Then one can use Maxima from any application which can load libecl.so
> > (e.g. from an application written in C).
> > If we ever port SageMath (sagemath.org) to OpenBSD (there is a port to FreeBSD)
> > then maxima.fas will be necessary.
> >
> You are going to have to enlighten me as to what the *.fas extension
> means. I did a web search and could only find this page which did not
Well, see the ECL manual, Sect. 3.1.1.2:
https://ecl.common-lisp.dev/static/manual/System-building.html#Native-FASL
It's a basically a dynamic shared library. On Linux I can do
$ ldd local/lib/ecl/maxima.fas
linux-vdso.so.1 (0x00007ffd17c88000)
libecl.so.21.2 => /home/dimpase/work/software/sage/local/lib/libecl.so.21.2 (0x00007cb5df721000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007cb5df5c5000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007cb5df3f1000)
libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10 (0x00007cb5df370000)
libgc.so.1 => /lib/x86_64-linux-gnu/libgc.so.1 (0x00007cb5df2f8000)
libffi.so.7 => /lib/x86_64-linux-gnu/libffi.so.7 (0x00007cb5df2ec000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007cb5df2c8000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007cb5df2c2000)
/lib64/ld-linux-x86-64.so.2 (0x00007cb5e06d2000)
> give me much information. I looked at Sages web page and did not see
> anything. Here is what I did find:
>
> https://archlinux.org/packages/extra/x86_64/maxima-fas/
>
> Concerning xmaxima.fas, it's built! Look:
>
> $ cd /usr/ports/pobj/maxima-5.46.0/
> $ find . -type f -name "maxima.fas"
> ./maxima-5.46.0/src/binary-ecl/maxima.fas
>
> there is a whole bunch of *.fas files in
> /usr/ports/pobj/maxima-5.46.0/maxima-5.46.0/src/binary-ecl/
I think you don't need any of these, except maxima.fas
>
> I just have to figure out how to install them. I looked for configure
> options but I did not see any.
I don't think there is anything provided by Maxima build system in this
respect (it's highly lisp-system dependent, after all).
One has to copy maxima.fas into /usr/local/lib/ecl/
I suppose OpenBSD ports build system has a way to do this, so that
it's correctly gets uninstalled, too.
> Lete me test the basic funcionality of
> maxima (diff, integrate, taylor etc.). Most of those functions have to
> be tested. Afterwards, I will look into isntalling the *.fas files in
> /usr/local/lib/ecl/.
>
> > As well, less urgently,
> > shouldn't there be a way to get Maxima compiled with sbcl, only only ecl.
> > (sbcl typically gives considerably better performance, and it's available in ports,
> > but embedding into applications is a different story, harder than with ecl).
>
> I suppose you are refering to Steel Bank Common Lisp:
>
> http://www.sbcl.org/
>
> I will have to ask about this on the Maxima mail list. Give me some
> time. There is a port: /usr/ports/lang/sbcl
- yes, there is a port, as I wrote.
I think for Maxima developers sbcl is the primary lisp system,
and many Linux distros by default ship Maxima built with sbcl.
Cheers,
Dima
No comments:
Post a Comment