axiom-math
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-math] Axiom: Errors on suse 10.2, 32 bit


From: Daniel Herring
Subject: Re: [Axiom-math] Axiom: Errors on suse 10.2, 32 bit
Date: Wed, 31 Oct 2007 20:57:45 -0400 (EDT)

I have installed the axiom binaries on a suse linux 10.2, 32 bit system, and
am trying some basic commands.

I am getting the errors below.

The language you type into Axiom is interpreted by a lisp subsystem, more specifically GCL. Every time you define a function in Axiom, this triggers a lisp function to be generated; GCL actually writes out C source files, compiles them with GCC, and links the objects back in.

Below are my ramblings as I found a solution.

(11) -> draw(sin(x),x=-1..1);
  Loading /home/apps/axiombin/mnt/fedora5/algebra/SEG.o for domain
     Segment
  Loading /home/apps/axiombin/mnt/fedora5/algebra/SEGBIND.o for domain
     SegmentBinding
  Loading /home/apps/axiombin/mnt/fedora5/algebra/FLOAT.o for domain
     Float

Here we see GCL loading the object files for some precompiled functions.

  >> System error:
  (SYSTEM "gcc -c -Wall -DVOL=volatile -fsigned-char -pipe
-I/root/axiom/mnt/fedora5/bin/../h  -O3 -fomit-frame-pointer -c
\"/tmp/gazonk7.c\" -o \"/tmp/gazonk7.o\" -w") returned a non-zero value 0.

Here we see GCL trying to compile a new function... and failing.

Based on the previous error message, GCC was having trouble with the "-I/root/axiom/mnt/fedora5/bin/../h". Clearly not good; this path contains a reference to fedora5, while you're running suse and probably not as root...

This is a funny artifact of how Axiom is compiled. This path points into the compilation directory, but is totally unnecessary for Axiom to run properly. On systems where the path doesn't exist, everything is fine. Unfortunately, GCC sees that this path *might* exist but that your user doesn't have permissions to look inside /root and see if it does...

For fun, run
strings `which AXIOMsys` | grep /root/axiom/mnt/fedora5/bin

You should see a line like
#+:akcl (setq si::*system-directory* "/root/axiom/mnt/fedora5/bin/")

That's where the problem lies.

To work around this, type the following line
)lisp (setf si::*system-directory* ".")
as your first command to Axiom after it starts up.

All your problems (wrt the above error) should go away.

Later,
Daniel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]