Discussion:
[build-improvements] support system-install GCL
(too old to reply)
Gabriel Dos Reis
2006-09-12 03:22:34 UTC
Permalink
I've long errouneously blamed GCL. Detailed investigation turned out
top be an Axiom doing. Fixed thusly.

Tested on:

* i686-pc-linux with GCL and noweb installed
* x86_64-suse-linux without GCL and with noweb installed

Bill, if you can give it a try on mac, that would be very appreciated.

-- Gaby

src/interp/

2006-09-11 Gabriel Dos Reis <***@cs.tamu.edu>

* Makefile.pamphlet (${SAVESYS}): Don't set
si::*system-directory*.
* Makefile.in: Regenerate.

*** src/interp/Makefile.pamphlet (revision 15833)
--- src/interp/Makefile.pamphlet (local)
*************** GCL likes to tell you when it has replac
*** 840,845 ****
--- 840,852 ----
tail-recursive call. This happens when the last form in a function
is a call to the same function. In general, we don't care so we set
compiler::*suppress-compiler-notes* to true in order to reduce the noise.
+
+ Notice that when Axiom uses GCL as the Lisp platform, it is usually not
+ a good idea to mess with GCL's internal variables. In particular, GCL
+ has its own idea about what to do with [[si::*system-directory*]], which
+ should not be set here just because we happen to save an GCL-based image.
+ Doing otherwise causes havoc.
+
<<savesys>>=
${SAVESYS}: ${DEPSYS} ${OBJS} ${OUT}/bookvol5.${O} ${OUT}/util.${O} \
${OUT}/nocompil.${LISP} ${OUT}/sys-pkg.${LISP} \
*************** ${SAVESYS}: ${DEPSYS} ${OBJS} ${OUT}/boo
*** 883,889 ****
# @ echo '#+:akcl (si::multiply-bignum-stack 10)' >> ${OUT}/makeint.lisp
@ echo '#+:akcl (setq compiler::*suppress-compiler-notes* t)' >> ${OUT}/makeint.lisp
@ echo '#+:akcl (si::gbc-time 0)' >> ${OUT}/makeint.lisp
! @ echo '#+:akcl (setq si::*system-directory* "${SPAD}/bin/")' >> ${OUT}/makeint.lisp
@ (cd ${OBJ}/${SYS}/bin ; \
echo '(progn (gbc t) (load "${OUT}/makeint.lisp") (gbc t) (user::spad-save "${SAVESYS}"))' | ${LISPSYS} )
@ echo 6 ${SAVESYS} created
--- 890,896 ----
# @ echo '#+:akcl (si::multiply-bignum-stack 10)' >> ${OUT}/makeint.lisp
@ echo '#+:akcl (setq compiler::*suppress-compiler-notes* t)' >> ${OUT}/makeint.lisp
@ echo '#+:akcl (si::gbc-time 0)' >> ${OUT}/makeint.lisp
! # @ echo '#+:akcl (setq si::*system-directory* "${SPAD}/bin/")' >> ${OUT}/makeint.lisp
@ (cd ${OBJ}/${SYS}/bin ; \
echo '(progn (gbc t) (load "${OUT}/makeint.lisp") (gbc t) (user::spad-save "${SAVESYS}"))' | ${LISPSYS} )
@ echo 6 ${SAVESYS} created
Page, Bill
2006-09-12 05:46:22 UTC
Permalink
Post by Gabriel Dos Reis
I've long errouneously blamed GCL. Detailed investigation turned
out top be an Axiom doing. Fixed thusly.
* i686-pc-linux with GCL and noweb installed
* x86_64-suse-linux without GCL and with noweb installed
Bill, if you can give it a try on mac, that would be very
appreciated.
Good work!

I don't have access to a mac right now, but I can confirm that the
following commands build Axiom just fine on axiom-developer.org
with both noweb and gcl pre-installed:

$ svn co
https://svn.sourceforge.net/svnroot/axiom/branches/build-improvements \
axiom.build-improvements

$ mkdir axiom-build

$ cd axiom-build

$ ../axiom.build-improvements/configure

$ more config.log

...skipping
configure:1381: checking target system type
configure:1395: result: i686-pc-linux
configure:1476: checking for gcc
configure:1492: found /usr/local/bin/gcc
configure:1502: result: gcc
configure:1746: checking for C compiler version
configure:1749: gcc --version </dev/null >&5
gcc (GCC) 4.0.1
...skipping
configure:2975: checking for notangle
configure:2991: found /usr/local/bin/notangle
configure:3001: result: notangle
configure:3010: checking for noweave
configure:3026: found /usr/local/bin/noweave
configure:3036: result: noweave
configure:3088: checking for gcl
configure:3104: found /usr/local/bin/gcl
...

$ nohup make&

$ tail -f nohup.out

...
46 Environment : PLF=LINUXplatform CCF=-O2 -fno-strength-reduce -Wall
-D_GNU_SOURCE -DLINUXplatform LDF= CC=gcc AWK= RANLIB=ranlib TOUCH=touch
TAR= AXIOMXLROOT=/home/page/axiom-build/mnt/linux/compiler O=o BYE=bye
LISP=lsp DAASE=/home/page/axiom.build-improvements/src/share
GCLOPTS=--enable-vssize=65536*2 --enable-statsysbfd
--enable-maxpage=256*1024 SRCDIRS=bootdir interpdir sharedir algebradir
etcdir clefdir docdir graphdir smandir hyperdir inputdir PATCH=patch
make[2]: Leaving directory `/home/page/axiom-build'
make[1]: Leaving directory `/home/page/axiom-build'

$ export AXIOM=/home/page/axiom-build/mnt/linux
$ export PATH=$AXIOM/bin:$PATH
$ AXIOMsys
GCL (GNU Common Lisp) 2.6.8 CLtL1 Sep 11 2006 21:48:34
Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)
Binary License: GPL due to GPL'ed components: (XGCL READLINE BFD
UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter

Use (help) to get some basic information on how to use GCL.
Temporary directory for compiler files set to /tmp/
AXIOM Computer Algebra System
Version: Axiom (build improvements branch) -- 2006-08-26
Timestamp: Monday September 11, 2006 at 22:25:11
------------------------------------------------------------------------
-----
Issue )copyright to view copyright notices.
Issue )summary for a summary of useful system commands.
Issue )quit to leave AXIOM and return to shell.
------------------------------------------------------------------------
-----

Re-reading compress.daase Re-reading interp.daase
Re-reading operation.daase
Re-reading category.daase
Re-reading browse.daase
(1) ->

---------

Maybe we should set the option to eliminate the GCL banner?

I note that the GCLOPTS shown above do not correctly reflect the
fact that gcl was pre-built with different options.

Thanks for your work on this!

Regards,
Bill Page.
Gabriel Dos Reis
2006-09-12 11:28:30 UTC
Permalink
On Tue, 12 Sep 2006, Page, Bill wrote:

| On Monday, September 11, 2006 11:23 PM Gabriel Dos Reis wrote:
| >
| > I've long errouneously blamed GCL. Detailed investigation turned
| > out top be an Axiom doing. Fixed thusly.
| >
| > Tested on:
| >
| > * i686-pc-linux with GCL and noweb installed
| > * x86_64-suse-linux without GCL and with noweb installed
| >
| > Bill, if you can give it a try on mac, that would be very
| > appreciated.
| >
|
| Good work!
|
| I don't have access to a mac right now, but I can confirm that the
| following commands build Axiom just fine on axiom-developer.org
| with both noweb and gcl pre-installed:

Many thanks for testing.

[...]

| Maybe we should set the option to eliminate the GCL banner?

Yes, definitely.

| I note that the GCLOPTS shown above do not correctly reflect the
| fact that gcl was pre-built with different options.

I'll look into that.

| Thanks for your work on this!

It was my pleasure.

-- Gaby
Page, Bill
2006-09-12 20:27:45 UTC
Permalink
Gaby,
Post by Gabriel Dos Reis
|
| I don't have access to a mac right now, but I can confirm
| that the following commands build Axiom just fine on
| axiom-developer.org with both noweb and gcl pre-installed.
Here is another report:

I have successfully built the Axiom Silver build.improvements
branch on a Sun 280R (sparc, 64bit) Solaris 10 06/06 system with
a full GNU toolchain installed.

bash-2.05$ gcc --version
gcc (GCC) 4.1.1

bash-2.05$ ld --version
GNU ld version 2.17

bash-2.05$ make --version
GNU Make 3.80

bash-2.05$ awk --version
GNU Awk 3.1.5

etc.

I built and installed GCL separately from the Axiom build.
I really like this option. :-) I think it makes the whole
build easier.

bash-2.05$ svn co https://svn.sourceforge.net/svnroot/axiom/ \
branches/build-improvements axiom.build-improvements

bash-2.05$ svn co https://svn.sourceforge.net/svnroot/axiom/ \
branches/build-improvements axiom.build-improvements

bash-2.05$ tar xzvf axiom.build-improvements/zips/gcl-2.6.8pre.tgz

But it wasn't quite so easy... A patch is necessary to build GCL.

bash-2.05$ cp gcl-2.6.8pre gcl-2.6.8pre_orig

----------
bash-2.05$ diff -Naur gcl-2.6.8pre_orig gcl-2.6.8pre
diff -Naur gcl-2.6.8pre_orig/h/solaris.defs gcl-2.6.8pre/h/solaris.defs
--- gcl-2.6.8pre_orig/h/solaris.defs 2004-07-15 12:28:44.000000000
-0400
+++ gcl-2.6.8pre/h/solaris.defs 2006-09-12 13:15:58.280649000 -0400
@@ -1,15 +1,18 @@

-# notes for redhat 6.0
-# the configure should select the compiler
GCC=/usr/bin/i386-glibc20-linux-gcc
-# However for the gcl-tk directory, you must use plain 'gcc' since
-# that must link with the tcl tk libs which have been compiled with
it.
-# so after configure change to GCC=gcc in the gcl-tk/makefile
+# notes for Solaris

+# Machine dependent makefile definitions for Solaris 9, 10
+# running a full GNU toolchain. This might not work on a
+# pure Sun configuration.

-# Machine dependent makefile definitions for intel 386,486 running
linux
+# Modified: Sept 12, 2006 Bill Page

LBINDIR=/usr/local/bin

+# We need these flags to get the right options for sockio.h
+# and memalign
+CFLAGS := ${CFLAGS} -DBSD_COMP=bsd_comp -DGNUMALLOC=gnumalloc
+
#OFLAG = -g -Wall
#OFLAG = -g -Wall -fomit-frame-pointer -Werror
#LIBS = -lm

---------

Probably the GCL build should to be updated to properly detect at
least the two major toolchain configurations on Sun Solaris systems:
Sun native and GNU. Over time, these seem to be converging but there
are still significant differences.

Apparently GCL must be built in its own source directory. When I
tried to build GCL using lndir to ghost the source tree, GCL built
and ran but it would not properly perform a compiler::link function.
It returned an error message contain ~A format character where a
file name should have been.

bash-2.05$ cd gcl-2.6.8pre
bash-2.05$ ./configure --disable-emacsdir --disable-tkconfig \
--disable-tclconfig --disable-xgcl

bash-2.05$ nohup make&

bash-2.05$ tail -f nohup.out

bash-2.05$ su

bash-2.05# make install

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

Some patches were also necessary to the Axiom sources.

bash-2.05$ cp axiom.build-improvements \
axiom.build-improvements_orig

To work around problems with X11 include file paths in the first
part of the build, I set the following environment variable:

bash-2.05$ export CPATH=/usr/openwin/share/include

"CPATH specifies a list of directories to be searched as if
specified with -I, but after any paths given with -I options
on the command line."

A better solution might be to include the 'AXIOM_X11_CFFLAGS'
variable in the CFLAGS option in those builds that reference
the X11 libraries and include files. Something like this:

----------
bash-2.05$ diff -Nau
axiom.build-improvements_orig/src/lib/Makefile.pamphlet \
axiom.build-improvements/src/lib/Makefile.pamphlet
--- axiom.build-improvements_orig/src/lib/Makefile.pamphlet
2006-09-12 14:48:19.390563000 -0400
+++ axiom.build-improvements/src/lib/Makefile.pamphlet 2006-09-12
16:13:52.104054000 -0400
@@ -17,7 +17,7 @@
OUT=${OBJ}/${SYS}/lib
DOCINT=${INT}/doc/src/lib
DOCMNT=${MNT}/${SYS}/doc/src/lib
-INC= $(axiom_src_srcdir)/include
+INC= $(axiom_src_srcdir)/include ${AXIOM_X11_CFLAGS}

AR= ${OUT}/bsdsignal.o ${OUT}/cursor.o ${OUT}/edin.o \
${OUT}/fnct_key.o ${OUT}/halloc.o ${OUT}/openpty.o \

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

Warning: I have not tested the above patch yet.

This patch corrects and error in building debugsys

-----------
diff -Naur -x .svn -x Makefile -x '*.in' -x '*.dvi' -x '*.log' -x
'*.tex' -x '*.
toc' -x '*.aux' -x '*.mk' -x '*.lisp' -x '*.c' -x nohup.out
axiom.build-improvem
ents_orig/src/interp/debugsys.lisp.pamphlet
axiom.build-improvements/src/interp/
debugsys.lisp.pamphlet
--- axiom.build-improvements_orig/src/interp/debugsys.lisp.pamphlet
2006-09-
12 14:33:52.828375000 -0400
+++ axiom.build-improvements/src/interp/debugsys.lisp.pamphlet
2006-09-12 15:00
:03.637137000 -0400
@@ -79,6 +79,18 @@
The [[*build-version*]] variable is only introduced into the system
from the Makefile. Since this isn't going thru the Makefile when
loaded by hand we need to establish a value.
+
+These names must be adjusted if necessary to reflect the
+platform name. So:
+
+ (thesymb "/obj/linux/interp/sockio.o")
+
+is wrong but
+
+ (thesymb (concatenate 'string "/obj/" *sys* "/interp/sockio.o"))
+
+is ok. (Sept 12, 2006 Bill Page)
+
<<*>>=
(setq *build-version* "debug")
(build-interpsys
@@ -169,7 +181,6 @@
(thesymb "/int/interp/simpbool.clisp")
(thesymb "/int/interp/slam.clisp")
(thesymb (concatenate 'string "/obj/" *sys* "/interp/sockio.o"))
- (thesymb "/obj/linux/interp/sockio.o")
(thesymb "/int/interp/spad.lisp")
(thesymb "/int/interp/spaderror.lisp")
(thesymb "/int/interp/template.clisp")

This patch adds the X11 libraries to sman and friends.

--------

diff -Naur -x .svn -x Makefile -x '*.in' -x '*.dvi' -x '*.log' -x
'*.tex' -x '*.
toc' -x '*.aux' -x '*.mk' -x '*.lisp' -x '*.c' -x nohup.out
axiom.build-improvem
ents_orig/src/sman/Makefile.pamphlet
axiom.build-improvements/src/sman/Makefile.
pamphlet
--- axiom.build-improvements_orig/src/sman/Makefile.pamphlet
2006-09-12 14:15
:44.112706000 -0400
+++ axiom.build-improvements/src/sman/Makefile.pamphlet 2006-09-12
13:51:33.2870
37000 -0400
@@ -10,6 +10,9 @@
\tableofcontents
\eject
\section{Environment variables}
+The LDFLAGS must include the AXIOM_X11_LDFLAGS so that
+the loader can find the X11 libraries on non-standard
+configurations. (Sept 12, 2006 Bill Page)
<<environment>>=
# this is where we are compiling from
IN= $(axiom_src_srcdir)/sman
@@ -33,7 +36,8 @@
# this is where the documentation ends up
DOC= ${MNT}/${SYS}/doc/src/sman
CFLAGS= ${CCF}
-LDFLAGS= -L${LIB} -lspad ${LDF}
+# LDFLAGS= -L${LIB} -lspad ${LDF}
+LDFLAGS= -L${LIB} -lspad ${LDF} -lspad ${AXIOM_X11_LDFLAGS}

DOCFILES=${DOC}/session.c.dvi ${DOC}/nagman.c.dvi ${DOC}/sman.c.dvi \
${DOC}/spadclient.c.dvi
@@ -45,7 +49,7 @@
<<session>>=
${OUTLIB}/session: ${SMANOBJS} ${MIDOBJ}/session.o
@ echo 1 linking session
- @ ${CC} -o ${OUTLIB}/session ${MIDOBJ}/session.o ${SMANOBJS}
+ @ ${CC} -o ${OUTLIB}/session ${MIDOBJ}/session.o ${SMANOBJS}
${LDFLAGS}

${MID}/session.c: ${IN}/session.c.pamphlet
@ echo 2 making ${MID}/session.c from ${IN}/session.c.pamphlet
@@ -71,7 +75,7 @@
<<nagman>>=
${OUT}/nagman: ${SMANOBJS} ${MIDOBJ}/nagman.o
@ echo 5 linking nagman
- @ ${CC} -o ${OUT}/nagman ${MIDOBJ}/nagman.o ${SMANOBJS}
+ @ ${CC} -o ${OUT}/nagman ${MIDOBJ}/nagman.o ${SMANOBJS}
${LDFLAGS}

${MID}/nagman.c: ${IN}/nagman.c.pamphlet
@ echo 6 making ${MID}/nagman.c from ${IN}/nagman.c.pamphlet
@@ -95,7 +99,7 @@
<<spadclient>>=
${OUTLIB}/spadclient: ${SMANOBJS} ${MIDOBJ}/spadclient.o
@ echo 9 linking spadclient
- @ ${CC} -o ${OUTLIB}/spadclient ${MIDOBJ}/spadclient.o
${SMANOBJS}
+ @ ${CC} -o ${OUTLIB}/spadclient ${MIDOBJ}/spadclient.o
${SMANOBJS} ${LD
FLAGS}

${MID}/spadclient.c: ${IN}/spadclient.c.pamphlet
@ echo 10 making ${MID}/spadclient.c from
${IN}/spadclient.c.pamphlet
@@ -119,7 +123,7 @@
<<sman>>=
${OUT}/sman: ${SMANOBJS} ${MIDOBJ}/sman.o
@ echo 13 linking sman
- @ ${CC} -o ${OUT}/sman ${MIDOBJ}/sman.o ${SMANOBJS}
+ @ ${CC} -o ${OUT}/sman ${MIDOBJ}/sman.o ${SMANOBJS} ${LDFLAGS}

${MID}/sman.h: ${IN}/sman.c.pamphlet
@ echo 00 making ${MID}/sman.h from ${IN}/sman.c.pamphlet

---------

With the new build.improvements branch we can now do an out-of-source
build for Axiom. :)

bash-2.05$ mkdir axiom.build
bash-2.05$ cd axiom.build
bash-2.05$ ../axiom.build-improvements/configure
bash-2.05$ nohup make&
bash-2.05$ tail -f nohup.out

To perform the install we need another simple patch:

---------
bash-2.05$ diff -Nau axiom.build-improvements_orig/Makefile.pamphlet \
axiom.build-improvements/Makefile.pamphlet
--- axiom.build-improvements_orig/Makefile.pamphlet 2006-09-12
14:11:30.204909000 -0400
+++ axiom.build-improvements/Makefile.pamphlet 2006-09-12
15:31:00.802527000 -0400
@@ -625,7 +625,11 @@
@
\subsection{install}
<<install>>=
+.PHONY: install
install:
+ $(PATH_EXPORTS) $(MAKE) do-install
+
+do-install:
@echo 78 installing Axiom in ${DESTDIR}
@mkdir -p ${DESTDIR}
@cp -pr ${MNT} ${DESTDIR}

----------
bash-2.05$ su
bash-2.05# make install

78 installing Axiom in /usr/local/axiom
79 Axiom installation finished.

Please add /usr/local/axiom/mnt/solaris9/bin to your PATH variable
Start Axiom with the command axiom

make[1]: Leaving directory `/export/home/dmprod/axiom.build'

bash-2.05$ export PATH=/usr/local/axiom/mnt/solaris9/bin:$PATH
bash-2.05$ AXIOMsys
GCL (GNU Common Lisp) 2.6.8 CLtL1 Sep 12 2006 05:57:14
Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)
Binary License: GPL due to GPL'ed components: (READLINE BFD UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter

Use (help) to get some basic information on how to use GCL.
Temporary directory for compiler files set to /tmp/
AXIOM Computer Algebra System
Version: Axiom (build improvements branch) -- 2006-09-12
Timestamp: Wednesday September 13, 2006 at 00:52:01
------------------------------------------------------------------------
-----
Issue )copyright to view copyright notices.
Issue )summary for a summary of useful system commands.
Issue )quit to leave AXIOM and return to shell.
------------------------------------------------------------------------
-----

Re-reading compress.daase Re-reading interp.daase
Re-reading operation.daase
Re-reading category.daase
Re-reading browse.daase
(1) ->

----------

Regards,
Bill Page.
Gabriel Dos Reis
2006-09-12 23:28:49 UTC
Permalink
On Tue, 12 Sep 2006, Page, Bill wrote:

| Gaby,
|
| On Tue, 12 Sep 2006 I wrote:
| > |
| > | I don't have access to a mac right now, but I can confirm
| > | that the following commands build Axiom just fine on
| > | axiom-developer.org with both noweb and gcl pre-installed.
| >
|
| Here is another report:

I like it!
:-)

Hmm, now this means I can no longer mess the build-improvements branch
without having Bill after me :-) :-)

I'll set priority to integrate your suggestion and merge a good part
of build-improvements to silver (after extensive testing and all
that). Which means I have tp get back to Ralf soon.

I have more work on the makefile simplification in the pipeline, and I
would like to have them in. I would like to support parallel build of
Axiom, because it takes just too long to compile sequentially. I
don't have that implemented yet. But good part of the work is in
testing.

I'll work with Camm for the GCL bits.

Thanks!

-- Gaby
root
2006-09-13 00:46:12 UTC
Permalink
Gaby,

Be sure you test your build on Fedora Core 5.
I had to special case that platform.

t
Gabriel Dos Reis
2006-09-13 00:59:48 UTC
Permalink
On Tue, 12 Sep 2006, root wrote:

| Gaby,
|
| Be sure you test your build on Fedora Core 5.
| I had to special case that platform.

yes, testing on as many as supported platforms is a prerequisite for
merge to silver. At this point, I'm still working on an experimental
branch. I would like to move as quickly as possible to the big
picture and fix the missing bits as I get access to more platforms.

I have no access to a Fedora Core 5, nor a *BSD platform. IT is
essential for me to get Axiom build on MACs though.
Any help is much appreciated.

-- Gaby
root
2006-09-13 02:39:43 UTC
Permalink
[***@tower bi]$ ./configure
checking build system type... i686-pc-linux
checking host system type... i686-pc-linux
checking target system type... i686-pc-linux
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for gawk... gawk
checking for gtar... gtar
checking for gpatch... no
checking for patch... patch
checking for make... make
checking for ranlib... ranlib
checking for touch... touch
checking for latex... latex
checking for makeindex... makeindex
checking for notangle... no
checking for noweave... no
checking for gcl... no
checking how to run the C preprocessor... gcc -E
checking for X... libraries , headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
configure: SYSNAME=Fedora Core release 5 (Bordeaux)
configure: Linux
configure: creating ./config.status
config.status: creating Makefile
config.status: creating lsp/Makefile
config.status: creating src/Makefile
config.status: creating src/lib/Makefile
config.status: creating src/boot/Makefile
config.status: creating src/interp/Makefile
config.status: creating src/share/Makefile
config.status: creating src/algebra/Makefile
config.status: creating src/etc/Makefile
config.status: creating src/clef/Makefile
config.status: creating src/doc/Makefile
config.status: creating src/graph/Makefile
config.status: creating src/graph/Gdraws/Makefile
config.status: creating src/graph/view2D/Makefile
config.status: creating src/graph/view3D/Makefile
config.status: creating src/graph/viewAlone/Makefile
config.status: creating src/graph/viewman/Makefile
config.status: creating src/sman/Makefile
config.status: creating src/hyper/Makefile
config.status: creating src/input/Makefile
config.status: creating src/booklets/Makefile
config.status: creating build/scripts/document
[***@tower bi]$ echo $AXIOM

[***@tower bi]$ export AXIOM=`pwd`/mnt/linux
[***@tower bi]$ make
cd . && autoconf
cd /home/arch/bi && /bin/sh ./config.status `echo /home/arch/bi/ | sed -e 's|/home/arch/bi/||'`Makefile
config.status: creating Makefile
AXIOM=/home/arch/bi/mnt/linux; export AXIOM; PATH=/home/arch/bi/mnt/linux/bin:${PATH}; make do-all
make[1]: Entering directory `/home/arch/bi'
13 making noweb
patching file modules.c
mnt.o: In function `emitfile':mnt.c:(.text+0x3c0): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
make[2]: [install-code] Error 1 (ignored)
make[2]: [install-tex] Error 1 (ignored)
texhash: /usr/share/texmf: directory not writable. Skipping...
texhash: /usr/share/texmf-config: directory not writable. Skipping...
texhash: /usr/share/texmf-var: directory not writable. Skipping...
texhash: /var/lib/texmf/ls-R: no write permission. Skipping...
texhash: Done.
make[2]: [install-elisp] Error 1 (ignored)
./config/mkinstalldirs /home/arch/bi/build/i686-pc-linux/share/texmf/tex && \
/home/arch/bi/build/i686-pc-linux/bin/notangle -Raxiom.sty /home/arch/bi/src/doc/axiom.sty.pamphlet > /home/arch/bi/build/i686-pc-linux/share/texmf/tex/axiom.sty
10 copying /home/arch/bi/src/scripts to /home/arch/bi/build/scripts
echo timestamp > stamp-build-scripts
1 making a linux system, PART=cprogs SUBPART=everything
2 Environment SPAD=/home/arch/bi/mnt/linux SYS=linux SPD=/home/arch/bi LSP=/home/arch/bi/lsp GCLDIR=/home/arch/bi/lsp/gcl-2.6.8pre SRC=/home/arch/bi/src INT=/home/arch/bi/int OBJ=/home/arch/bi/obj MNT=/home/arch/bi/mnt ZIPS=/home/arch/bi/zips TMP=/home/arch/bi/obj/tmp SPADBIN=/home/arch/bi/mnt/linux/bin INC=/home/arch/bi/src/include CCLBASE=/home/arch/bi/obj/linux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o /home/arch/bi/obj/tmp/trace GCLVERSION=gcl-2.6.8pre TANGLE=/home/arch/bi/build/i686-pc-linux/bin/notangle VERSION=Axiom (build improvements branch) -- 2006-09-12 DOCUMENT=/home/arch/bi/build/scripts/document DAASE=/home/arch/bi/src/share WEAVE=/home/arch/bi/build/i686-pc-linux/bin/noweave AXIOM_X11_CFLAGS= AXIOM_X11_LDFLAGS=-lXpm -lSM -lICE -lX11
make[2]: Entering directory `/home/arch/bi'
11 checking directory structure
12 Environment: SPAD=/home/arch/bi/mnt/linux SYS=linux SPD=/home/arch/bi LSP=/home/arch/bi/lsp GCLDIR=/home/arch/bi/lsp/gcl-2.6.8pre SRC=/home/arch/bi/src INT=/home/arch/bi/int OBJ=/home/arch/bi/obj MNT=/home/arch/bi/mnt ZIPS=/home/arch/bi/zips TMP=/home/arch/bi/obj/tmp SPADBIN=/home/arch/bi/mnt/linux/bin INC=/home/arch/bi/src/include CCLBASE=/home/arch/bi/obj/linux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o /home/arch/bi/obj/tmp/trace GCLVERSION=gcl-2.6.8pre TANGLE=/home/arch/bi/build/i686-pc-linux/bin/notangle VERSION=Axiom (build improvements branch) -- 2006-09-12 DOCUMENT=/home/arch/bi/build/scripts/document DAASE=/home/arch/bi/src/share WEAVE=/home/arch/bi/build/i686-pc-linux/bin/noweave AXIOM_X11_CFLAGS= AXIOM_X11_LDFLAGS=-lXpm -lSM -lICE -lX11
make[2]: Leaving directory `/home/arch/bi'
This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode
(./Makefile.tex
LaTeX2e <2003/12/01>
Babel <v3.8d> and hyphenation patterns for american, french, german, ngerman, b
ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e
stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis
h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur
kish, ukrainian, nohyphenation, loaded.
(/usr/share/texmf/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/size10.clo))
(/home/arch/bi/build/i686-pc-linux/share/texmf/tex/axiom.sty)
No file Makefile.aux.
[1]
No file Makefile.toc.
[2] [3] [4]
Overfull \hbox (41.71167pt too wide) in paragraph at lines 111--115
\OT1/cmr/m/n/10 for de-bug-ging pur-poses. We use the spe-cific file \OT1/cmtt/
m/n/10 $(top_builddir)/build/stamp-scripts
[5] [6] [7] [8] [9]
Overfull \hbox (34.22025pt too wide) in paragraph at lines 347--350
[]\OT1/cmr/m/n/10 The \OT1/cmtt/m/n/10 DOCUMENT \OT1/cmr/m/n/10 vari-able is no
w set to re-place the di-rect call to the \OT1/cmtt/m/n/10 $SPADBIN/document
[10] [11] [12] [13]
Overfull \hbox (48.74657pt too wide) in paragraph at lines 516--516
[]\OT1/cmtt/m/n/10 the {\tt{}noweb.src.shell.roff.mm.patch} file remove the ins
ecure temp file[]

Overfull \hbox (17.24684pt too wide) in paragraph at lines 516--516
[]\OT1/cmtt/m/n/10 {\tt{}noweb.src.lib.toascii.patch} because this is not a sou
rce file.[]
[14]
Overfull \hbox (53.99652pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 ${ENV} ${MAKE} BIN=${MNT}/${SYS}/bin/lib LIB=${MNT}/
${SYS}/bin/lib \[]

Overfull \hbox (48.74657pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 TEXINPUTS=${MNT}/${SYS}/bin/tex all install
${TMP}/trace )[]
Overfull \hbox (22.4968pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 @echo The file marks the fact that noweb has been ma
de > noweb[]
[15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]
[30] [31] [32] [33] [34] (./Makefile.aux)

LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.

)
(see the transcript file for additional information)
Output written on Makefile.dvi (34 pages, 55336 bytes).
Transcript written on Makefile.log.
This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode
(./Makefile.tex
LaTeX2e <2003/12/01>
Babel <v3.8d> and hyphenation patterns for american, french, german, ngerman, b
ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e
stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis
h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur
kish, ukrainian, nohyphenation, loaded.
(/usr/share/texmf/tex/latex/base/article.cls
Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/size10.clo))
(/home/arch/bi/build/i686-pc-linux/share/texmf/tex/axiom.sty) (./Makefile.aux)
[1] (./Makefile.toc [2]) [3] [4] [5]
Overfull \hbox (41.71167pt too wide) in paragraph at lines 111--115
\OT1/cmr/m/n/10 for de-bug-ging pur-poses. We use the spe-cific file \OT1/cmtt/
m/n/10 $(top_builddir)/build/stamp-scripts
[6] [7] [8] [9] [10]
Overfull \hbox (34.22025pt too wide) in paragraph at lines 347--350
[]\OT1/cmr/m/n/10 The \OT1/cmtt/m/n/10 DOCUMENT \OT1/cmr/m/n/10 vari-able is no
w set to re-place the di-rect call to the \OT1/cmtt/m/n/10 $SPADBIN/document
[11] [12] [13] [14]
Overfull \hbox (48.74657pt too wide) in paragraph at lines 516--516
[]\OT1/cmtt/m/n/10 the {\tt{}noweb.src.shell.roff.mm.patch} file remove the ins
ecure temp file[]

Overfull \hbox (17.24684pt too wide) in paragraph at lines 516--516
[]\OT1/cmtt/m/n/10 {\tt{}noweb.src.lib.toascii.patch} because this is not a sou
rce file.[]
[15]
Overfull \hbox (53.99652pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 ${ENV} ${MAKE} BIN=${MNT}/${SYS}/bin/lib LIB=${MNT}/
${SYS}/bin/lib \[]

Overfull \hbox (48.74657pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 TEXINPUTS=${MNT}/${SYS}/bin/tex all install
${TMP}/trace )[]
Overfull \hbox (22.4968pt too wide) in paragraph at lines 516--516
[] \OT1/cmtt/m/n/10 @echo The file marks the fact that noweb has been ma
de > noweb[]
[16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30]
[31] [32] [33] [34] [35] (./Makefile.aux) )
(see the transcript file for additional information)
Output written on Makefile.dvi (35 pages, 74776 bytes).
Transcript written on Makefile.log.
make[2]: Entering directory `/home/arch/bi'
18 making /home/arch/bi/src
make[3]: Entering directory `/home/arch/bi/src'
cd . && notangle -t8 Makefile.pamphlet > ./Makefile.in
/bin/sh: notangle: command not found
make[3]: *** [Makefile.in] Error 127
make[3]: Leaving directory `/home/arch/bi/src'
make[2]: *** [srcsetup] Error 2
make[2]: Leaving directory `/home/arch/bi'
make[1]: *** [do-all] Error 2
make[1]: Leaving directory `/home/arch/bi'
make: *** [all] Error 2
[***@tower bi]$ exit
exit

Process shell exited abnormally with code 2
Gabriel Dos Reis
2006-09-13 03:03:17 UTC
Permalink
On Tue, 12 Sep 2006, root wrote:

| checking for notangle... no
| checking for noweave... no

[...]

| make[3]: Entering directory `/home/arch/bi/src'
| cd . && notangle -t8 Makefile.pamphlet > ./Makefile.in
| /bin/sh: notangle: command not found
| make[3]: *** [Makefile.in] Error 127
| make[3]: Leaving directory `/home/arch/bi/src'
| make[2]: *** [srcsetup] Error 2
| make[2]: Leaving directory `/home/arch/bi'
| make[1]: *** [do-all] Error 2
| make[1]: Leaving directory `/home/arch/bi'
| make: *** [all] Error 2
| [***@tower bi]$ exit
| exit
|
| Process shell exited abnormally with code 2

To build the build-improvements branch at the moment, you need to have
noweb installed in the build environment. I took that as a working
assumption based on past discussions. When it is time to merge to
trunk, I'll work on reducing that requirement. (It is not hard to
remove though).

-- Gaby
root
2006-09-13 03:16:50 UTC
Permalink
yum install noweb failed.
where should i get the recommended noweb?

t
Gabriel Dos Reis
2006-09-13 03:33:45 UTC
Permalink
On Tue, 12 Sep 2006, root wrote:

| yum install noweb failed.

I'm puzzled.

| where should i get the recommended noweb?

I took that of Norman Ramsey.

-- Gaby
root
2006-09-13 03:36:12 UTC
Permalink
do you require a specific version or can i use the one in zips?
i'm trying not to make assumptions so i can do a valid test of
your makefiles.

t
Gabriel Dos Reis
2006-09-13 04:02:32 UTC
Permalink
On Tue, 12 Sep 2006, root wrote:

| do you require a specific version or can i use the one in zips?

You can use the one in the zips (just way --without-gcl) -- though I
also build with GCL-2.6.7

If you have GCL installed, configure will detect it and use it.

| i'm trying not to make assumptions so i can do a valid test of
| your makefiles.

Many thanks for your help.

-- Gaby
Page, Bill
2006-09-13 03:55:32 UTC
Permalink
Tim,
Post by root
do you require a specific version or can i use the one in
zips? i'm trying not to make assumptions so i can do a valid
test of your makefiles.
Noweb's master distribution is here:

http://www.eecs.harvard.edu/nr/noweb/dist

You can use that if you want. The executables have to be in
the PATH. Or you can use the one in the zips directory.

If the default build '--without-noweb' had worked, the one
in the zips directory is the one that would have been built.
That is was not automatically built is a bug.

Regards,
Bill Page.
Gabriel Dos Reis
2006-09-13 04:03:51 UTC
Permalink
On Tue, 12 Sep 2006, Page, Bill wrote:

| That is was not automatically built is a bug.

it is a dependency working assumption I made. It will be lifted -- it
is on the TODO list.

-- Gaby
Page, Bill
2006-09-13 03:58:07 UTC
Permalink
Post by root
yum install noweb failed.
where should i get the recommended noweb?
What's wrong with your installation of yum?

Or do you mean that noweb is not in the yum archive?

'apt-get install noweb' works fine on Debian.

Regards,
Bill Page.
root
2006-09-13 08:17:22 UTC
Permalink
Post by Page, Bill
Post by root
yum install noweb failed.
where should i get the recommended noweb?
What's wrong with your installation of yum?
Or do you mean that noweb is not in the yum archive?
'apt-get install noweb' works fine on Debian.
my guess is that yum is not in the fedora archives.
yum doesn't use debian so the only option is a hand install.

t

Continue reading on narkive:
Loading...