gcl-devel
[Top][All Lists]
Advanced

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

[Gcl-devel] Re: FW: [Axiom-developer] Important! Cannot Install on Fedor


From: Camm Maguire
Subject: [Gcl-devel] Re: FW: [Axiom-developer] Important! Cannot Install on Fedora
Date: 12 Oct 2005 17:42:11 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

"Bill Page" <address@hidden> writes:

> Camm,
> 
> When you have a moment could you please take a look at this
> attempt to build Axiom from CVS modified to use gcl-2.6.8pre
> for compatibility with FC4. The build proceeds well into the
> construction of Axiom but fails with the message:
> 
>  "Error: Cannot get relocated section contents"
> 
> which looks to me like a gcl problem.
> 
> Regards,
> Bill Page.
> 
> -----Original Message-----
> From: address@hidden [mailto:address@hidden 
> Sent: October 12, 2005 11:57 AM
> To: Bill Page
> Subject: Re: [Axiom-developer] Important! Cannot Install on Fedora
> 
> 
> On Tue, 11 Oct 2005 23:08:33 -0400, "Bill Page"
> <address@hidden> said:
> 
> > The short answer seems to be
> 
> >   echo 0 > /proc/sys/kernel/randomize_va_space
> 
> Thank you I will summarize what I did and what what works and send a
> separate
> mail to the list.
> 

OK, this should no longer be necessary in 2.6.8pre -- if it is please
let me know and please post the configure output.

The linking issue stems from directoryp not being defined.  This is
one of axiom's C functions in cfuns-c.c.  This module must be loaded
in the raw_image before trying to load cfuns.o (from cfuns.lisp) into
the saved_image.  Traditionally, axiom did this by modifying the
EXTRAS line in GCL's unixport/makefile so that the object was linked
in at the right time.  I do this for Debian as I suggested in my
earlier post here on the topic, using compiler::link.  I.e., form the
first lisp image with something like (exact details posted earlier)

(compiler::link nil "obj/linux/bin/lisp" "" "...cfuns-c.o
...sockio-c.o libspad.a")

Well, OK, here is the exact line:

(compiler::link 
        nil 
        "${OUT}/lisp" 
        (format nil "(progn (let ((*load-path* (cons ~S *load-path*))
                                  (si::*load-types* ~S)) 
                        (compiler::emit-fn t))
                        (when (fboundp (quote si::sgc-on)) 
                                (si::sgc-on t))
                        #-native-reloc(setq compiler::*default-system-p* t))"
                si::*system-directory* 
                (quote (list #+native-reloc".o" ".lsp"))) 
        "${OBJ}/${SYS}/lib/cfuns-c.o ${OBJ}/${SYS}/lib/sockio-c.o 
${OBJ}/${SYS}/lib/libspad.a")

Take care,


> > The best solution obviously would be to upgrade the Axiom sources
> > to the newest version of gcl that supports Axiom.
> >
> > http://lists.gnu.org/archive/html/axiom-developer/2005-09/msg00296.html
> >
> > To do this we would need to obtain gcl from CVS as described
> > in Camm's email:
> >
> >   export CVS_RSH=ssh
> >   export CVSROOT=:ext:subversions.gnu.org:/cvsroot/gcl
> >   cvs -z9 -q co -d gcl-2.6.8pre -r Version_2_6_8pre gcl
> >
> > -------
> >
> > then construct a tarball with the contents of 2.6.8pre, but
> > calling it gcl-2.6.7.tgz. Use it to replace zips/gcl-2.6.7.tgz
> > with the updated version of gcl. Then rebuild Axiom by
> >
> >   ./configure
> >   make clean
> >   make
> >
> > ------
> >
> > If this works, then the Axiom makefile can be updated to include
> > the new 2.6.8pre tarball and the appropriate new sections in
> > Makefile.pamphlet. I expect that Tim has this scheduled for some
> > time real soon now ... ;)
> >
> > Please let me know if this helps.
> 
> I does help, but I am still having problems. I have a default Fedora FC4
> with
> SELinux disabled and had analogous messages for FC3.
> 
> address@hidden>uname -a
> Linux roamrr.rioboo.org 2.6.13-1.1526_FC4 #1 Wed Sep 28 19:15:10 EDT 2005
> i686 i686 i386 GNU/Linux
> address@hidden>cat /proc/sys/kernel/randomize_va_space
> 1
> 
> I had to rewrite
> 
> Makefile, Makefile.pamphlet and lsp/makefile.pamphlet
> 
> I added a setion for gcl2.6.8pre in lsp/Makefile.pamphlet and place
> gcl-2.6.8pre under zips/. I am not sure if the section I added is correct
> since I don't know nothing about pamphlets.
> 
> address@hidden>cvs diff Makefile
> Index: Makefile
> ===================================================================
> RCS file: /cvsroot/axiom/axiom/Makefile,v
> retrieving revision 1.19
> diff -r1.19 Makefile
> 16c16,17
> < GCLVERSION=gcl-2.6.7
> ---
> > #GCLVERSION=gcl-2.6.7
> > GCLVERSION=gcl-2.6.8pre
> 31a33
> > WEAVE=${SPADBIN}/lib/noweave
> 43c45,46
> <      TANGLE=${TANGLE} VERSION=${VERSION} PATCH=${PATCH}
> DOCUMENT=${DOCUMENT}
> ---
> >      TANGLE=${TANGLE} VERSION=${VERSION} PATCH=${PATCH}
> DOCUMENT=${DOCUMENT} \>      WEAVE=${WEAVE}
> 
> address@hidden>cvs diff Makefile.pamphlet
> Index: Makefile.pamphlet
> ===================================================================
> RCS file: /cvsroot/axiom/axiom/Makefile.pamphlet,v
> retrieving revision 1.36
> diff -r1.36 Makefile.pamphlet
> 701c701,702
> < GCLVERSION=gcl-2.6.7
> ---
> > #GCLVERSION=gcl-2.6.7
> > GCLVERSION=gcl-2.6.8pre
> 
> address@hidden>cvs diff lsp/Makefile.pamphlet
> Index: lsp/Makefile.pamphlet
> ===================================================================
> RCS file: /cvsroot/axiom/axiom/lsp/Makefile.pamphlet,v
> retrieving revision 1.16
> diff -r1.16 Makefile.pamphlet
> 1044a1045,1081
> > \subsection{The GCL-2.6.8pre stanza}
> > This stanza will be written out when the GCLVERSION variable is
> > ``gcl-2.6.8pre''. It will overwrite the default version. See the
> > top level Makefile.pamphlet.
> > <<gcl-2.6.8pre>>=
> > # gcl version 2.6.8pre
> > OUT=${OBJ}/${SYS}/bin
> >
> > all:
> >       @echo 1 building ${LSP} ${GCLVERSION}
> >
> > gcldir:
> >       @echo 2 building ${GCLVERSION}
> >       @tar -zxf ${ZIPS}/${GCLVERSION}.tgz
> > <<gclConfigureMake>>
> >       @echo 13 finished system build on `date` | tee >gcldir
> >
> > ccldir: ${LSP}/ccl/Makefile
> >       @echo 14 building CCL
> >       @mkdir -p ${INT}/ccl
> >       @mkdir -p ${OBJ}/${SYS}/ccl
> >       @( cd ccl ; ${ENV} ${MAKE} )
> >
> > ${LSP}/ccl/Makefile: ${LSP}/ccl/Makefile.pamphlet
> >       @echo 15 making ${LSP}/ccl/Makefile from
> ${LSP}/ccl/Makefile.pamphlet
> >       @( cd ccl ; ${DOCUMENT} ${NOISE} Makefile )
> >
> > document:
> >       @echo 16 making docs in ${LSP}
> >       @mkdir -p ${INT}/doc/lsp/ccl
> >       @( cd ccl ; ${ENV} ${MAKE} document )
> >
> > clean:
> >       @echo 17 cleaning ${LSP}/ccl
> >       @( cd ccl ; ${ENV} ${MAKE} clean )
> >
> > @
> 
> After that it seems that gcl builds OK but the general build fails while
> building Axiom.
> 
> here is the content of he log.
> 
> I hope you can do something with it.
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

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