location for binaries in share .system files



Hello,

There are some .system files in share to build some packages
(affine, sym, lapack). When the user loads one of these packages,
the .system file directs the compilation of the package.

As it stands these all specify :binary-pathname to point into the
Maxima installation directory tree.
Then loading the package fails on systems for which an ordinary user
does not have write permission for the installation directory.
Linux installations are like that by default and I'm guessing other
Unix-like systems are like that too.

I'm wondering what we should do here. Some alternatives:

(0) Preserve status quo ante. Superuser can always compile
those packages. Although I don't think that's going to be practical
on multi-user systems, and it's not very obvious anyway.
(1) Point :binary-pathname to *MAXIMA-TEMPDIR*.
Should be writeable, but default is user's home directory and
that's not shared among users, and it's probably not so great
to clutter it. Although Maxima already dumps plotting files there.
(1a) Point :binary-pathname to something shared on *nix
systems, say /var/maxima-5.foo/binary or something.
(2) Modify .system files to fall back on just loading the package
files instead of compiling them, if compiling them fails.
That would probably make some packages take a long time to load;
I think that's a real problem for lapack. I'm not much worried about
run time here.
(3) Compile those share packages and copy compiler output into
installation rpms or whatever, so user doesn't have to compile them.

Comments?

Robert