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

Reply via email to