axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Axiom on x86-64 architectures


From: Bill Page
Subject: [Axiom-developer] Axiom on x86-64 architectures
Date: Mon, 27 Jun 2005 10:19:13 -0400

On June 26, 2005 10:37 AM C. Frangos wrote:

> I have tried to compile axiom on an amd64 3500+ machine running
> suse linux 9.2 (64 bit), but it did not work (see below).

I run Axiom on Fedora Core 3 x86-64 on an amd64 3500+ machine.
It's nice! GCL and Axiom are really fast on this architecture.
To get it to build I had to make some simple changes to the
Makefile.pamphlet. See below.

>
> Is it possible to compile axiom on this machine using 32 bit
> libraries only ?
>

It is possible, but it is not necessary. Obviously 64 bit is
better.

>Any assistance on what to do would be much appreciated - thanks.

For a quick fix, you need to find the secion of the Makefile.pamphlet
that applies to your configuration. In my case it is the code chunk
named <<Makefile.fedora3>>. Then you need to change a variable that
points to the X libraries. These are marked by ### below.

In Makefile.pamphlet:

<<Makefile.fedora3>>=
# System dependent Makefile for the Intel/Linux platform (Fedora Core 3)
# Platform variable
PLF=LINUXplatform
# C compiler flags
CCF="-O2 -fno-strength-reduce -Wall -D_GNU_SOURCE -D${PLF} -
I/usr/X11/include"
# Loader flags
LDF= -L/usr/X11R6/lib64               ### change for x86-64 architecture
# C compiler to use
CC=gcc
AWK=gawk
RANLIB=ranlib
TOUCH=touch
TAR=tar
AXIOMXLROOT=${AXIOM}/compiler
O=o
BYE=bye
LISP=lsp
DAASE=${SRC}/share
# where the libXpm.a library lives
XLIB=/usr/X11R6/lib                          
<<GCLOPTS-LOCBFD>>
<<SRCDIRS>>

--------------

After you edit Makefile.pamphlet. You should do

  .\configure
    (set env. vars.)
  make clean
  make

The proper way to do this of course would be to modify the
Axiom ./configure to recognize the machine architecture and
then to write a separate chunk in the Makefile.pamphlet for
that architecture.

During the sprint session at the Axiom meeting this spring we
all agreed that Axiom should adopt the standard autoconfig
tools that are used in many (most?) other open source projects
to identify machine architectures and configure the Axiom
makefiles. Camm said he would look at this but obvious he has
his hands full. If there are any other Axiom developers out
there that have some time to spend doing this, I think
everyone would really appreciate it!

> ...
> 45 making /home/apps/axiom/src/graph
> make[3]: Entering directory `/home/apps/axiom/src/graph'
> 1 making /home/apps/axiom/src/graph/viewman
> make[4]: Entering directory `/home/apps/axiom/src/graph/viewman'
> 1 linking /home/apps/axiom/mnt/linux/lib/viewman
>
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.4/../../../../x86_64-suse-linux
/bin/
> ld: skipping incompatible /usr/X11R6/lib/libX11.so when searching for
-lX11
>
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.4/../../../../x86_64-suse-linux
/bin
> /ld: skipping incompatible /usr/X11R6/lib/libX11.a when searching for
-lX11
>
/usr/lib64/gcc-lib/x86_64-suse-linux/3.3.4/../../../../x86_64-suse-linux
/bin
> /ld: cannot find -lX11
> collect2: ld returned 1 exit status
> make[4]: *** [/home/apps/axiom/mnt/linux/lib/viewman] Error 1
> make[4]: Leaving directory `/home/apps/axiom/src/graph/viewman'
> make[3]: *** [viewmandir] Error 2

This error message is cause by a wrong setting for the
variable LDF in the Makefile.pamphlet section that applies
to your machine architecture. You need to change this as
specified above.

Regards,
Bill Page.






reply via email to

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