gcl-devel
[Top][All Lists]
Advanced

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

[Gcl-devel] Re: Build problems with gcl cvs tag Version_2_7_0t5


From: Camm Maguire
Subject: [Gcl-devel] Re: Build problems with gcl cvs tag Version_2_7_0t5
Date: 14 Sep 2005 09:57:26 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

Mark Shields <address@hidden> writes:

> Hi Camm, I have an interesting situation here trying to build gcl on
> an opteron system with the following uname -a
> 
> Linux umbra.galois.com 2.6.9-11.ELsmp #1 SMP Wed Jun 8 17:54:20 CDT
> 2005 i686 athlon i386 GNU/Linux
> 
> The configure and make output follows, but the really intersting
> thing is that configure tells me:
> 
> checking for shared library/C stack ceiling to heap... 0x2ef000
> checking for maxpage revision... 512
> 

Where does DBEGIN start before being revised?  Over the shared memory
start?  If so, we can disable its lowering to 0 via a linker script,
as we already do when the stack starts below the default DBEGIN.

In general, the best place for shared libs is right below the stack,
which ideally should count down from high memory.  Redhat has done
sometimg to their kernel to enable this, so I know it is possible.  At
some point I might put out a Debian kernel patch if someone can assist
in isolating the code.  

>From GCL's point of view, we need to do at least three things

1) improve the logic for non-standard cases like this
2) provide configure command line switches to set the memory
   parameters manually.
3) get static linking working.

Right now I'm in the middle of a compiler improvement that has been
waiting a long time, so a complete fix can be some time away.  If you
can send me your entire configure output, I'll try to find you a work
around for your particular situation in the interim.

Take care,

> It seems on the 2.6.9 kernel the C libraries have been moved way down
> in the address space. Hence your ldd trick to determine the barrier
> and adjust MAXPAGE accordingly only gives me 1/1024'th of what I
> actually need!
> 
> How would you advice proceeding? Should we retreat to a 2.4 kernel?
> Or is there a kernel flag you know about in 2.6 which we could fiddle
> with? Or perhaps there is already a fix in HEAD?
> 
> BTW since we've never corresponded before I guess I should mention
> that we are working with Rockwell Collins, who have a very large ACL2
> model of a processor which seems to stress GCL very much indeed.
> Hence we really need at least 256K pages.
> 
> Many thanks,
> Mark Shields
> 
> ---------------------------------------------
> 
> creating cache ./config.cache
> checking host system type... i686-pc-linux-gnu
> host=i686-pc-linux-gnu
> enable_machine=
> use=386-linux
> checking for gcc... gcc
> checking whether the C compiler (gcc    ) works... yes
> checking whether the C compiler (gcc    ) is a cross-compiler... no
> checking whether we are using GNU C... yes
> checking whether gcc accepts -g... yes
> checking how to run the C preprocessor... gcc -E
> checking for gawk... gawk
> checking system version (for dynamic loading)... checking for
> makeinfo... makeinfo
> Linux-2.6.9-11.ELsmp
> checking for unistd.h... yes
> checking for sysconf in -lc... yes
> checking for _SC_CLK_TCK... 100
> checking for gmp.h... yes
> checking for __gmpz_init in -lgmp... yes
> checking for external gmp version... In file included from foo.c:1:
> /usr/include/gmp.h:54:40: stddef.h: No such file or directory
> checking for leading underscore in object symbols... no
> checking for GNU ld option -Map... yes
> checking for size of gmp limbs... 4
> checking _SHORT_LIMB... no
> checking _LONG_LONG_LIMB... no
> checking for X... libraries /usr/X11R6/lib, headers
> checking for dnet_ntoa in -ldnet... no
> checking for dnet_ntoa in -ldnet_stub... no
> checking for gethostbyname... yes
> checking for connect... yes
> checking for remove... yes
> checking for shmat... yes
> checking for IceConnectionNumber in -lICE... yes
> 
> -L/usr/X11R6/lib
> 
> -lSM -lICE
> checking for main in -lXmu... yes
> checking for main in -lXt... yes
> checking for main in -lXext... yes
> checking for main in -lXaw... yes
> checking for main in -lX11... yes
> checking size of long... 4
> checking size of int... 4
> checking size of short... 2
> checking size of char... 1
> checking for number of bits in char... 8
> checking for endian.h... yes
> checking endianness... little
> checking for sbrk... yes
> checking for randomized sbrk... yes
> checking for randomized brk remedy... yes
> checking for required object alignment... 8
> checking for C extension variable alignment... __attribute__
> ((aligned (8)))
> checking TYPE_BITS macro... 0xff09
> checking sizeof struct contblock... 8
> checking DBEGIN... 0x8000000
> checking for pagewidth... 12
> checking CSTACK_ADDRESS... 0xbff0ffff
> checking NEG_CSTACK_ADDRESS... yes
> checking finding CSTACK_ALIGNMENT... 32
> checking CSTACK_DIRECTION... -1
> checking finding default linker script... got it
> checking trying to lower heap start... checking linker script... done
> checking revised DBEGIN... 0x0
> checking for shared library/C stack ceiling to heap... 0x2ef000
> checking for maxpage revision... 512
> checking for C stack size floor from heap... 2097152
> checking for C stack size limit from fixnum table... 2097152 is OK
> checking mem top... 0xc0000000
> checking finding upper mem half range... 0x20000000
> checking sizeof long long int... yes
> checking for getcwd... yes
> checking for getwd... yes
> checking for uname... yes
> checking for gettimeofday... yes
> checking for sys/ioctl.h... yes
> checking for elf.h... yes
> checking for elf_abi.h... no
> checking for BSDgettimeofday... no
> checking for gettimeofday... (cached) yes
> checking for gettimeofday declaration... present
> checking for sin in -lm... yes
> checking for main in -lmingwex... no
> checking for math.h... yes
> checking for values.h... yes
> checking for float.h... yes
> checking for isnormal... yes
> checking for isfinite... yes
> checking for sockets... checking for connect... (cached) yes
> checking for gethostbyname... (cached) yes
> checking For network code for nsocket.c... yes
> checking check for listen using fcntl... yes
> checking for profil... yes
> checking for setenv... yes
> checking for _cleanup... no
> checking FIONBIO vs. O_NONBLOCK for nonblocking I/O... O_NONBLOCK
> checking check for SV_ONSTACK... yes
> checking check for SIGSYS... yes
> checking check for SIGEMT... no
> checking for asm/sigcontext.h... yes
> checking for asm/signal.h... yes
> checking for sigcontext...... sigcontext in signal.h
> checking for emacs... /usr/bin/emacs
> checking emacs site lisp directory... no
> checking emacs default.el... ./default.el
> checking emacs info/dir... /common/mbs/mCryptol/info/
> checking for tcl/tk... checking for tclsh... tclsh
> checking for main in -llieee... no
> not found
> checking alloca... yes
> checking for buggy gcc version from redhat... no
> updating cache ./config.cache
> creating ./config.status
> creating makedefc
> creating windows/gcl.iss
> creating windows/sysdir.bat
> creating windows/install.lsp
> creating h/gclincl.h
> makedefc
> 
> # begin makedefs
> 
> # use=386-linux
> 
> # for main link of raw_gcl
> LIBS=-Wl,-T ../unixport/gcl.script   -lm  -lgmp
> 
> #The multi precision library stuff
> MPFILES=$(MPDIR)/@MPI_FILE@ $(MPDIR)/libmport.a
> 
> 
> # root for the installation, eg /usr/local
> # This would cause make install to create /usr/local/bin/gcl and
> # /usr/local/lib/gcl-2-??/* with some basic files.
> prefix=/common/mbs/mCryptol
> 
> # where to place the info files
> INFO_DIR=/common/mbs/mCryptol/info/
> 
> # where to put emacs lisp files.
> EMACS_SITE_LISP=no
> 
> # the default.el file
> EMACS_DEFAULT_EL=./default.el
> 
> # numerous TCL/TK variables culled from the tkConfig.sh and tclConfig.sh
> # if these are found.
> TK_CONFIG_PREFIX=
> TK_LIBRARY=
> TCL_LIBRARY=
> TK_XINCLUDES=
> TK_INCLUDE=
> TCL_INCLUDE=
> TK_LIB_SPEC=
> TK_BUILD_LIB_SPEC=
> TK_XLIBSW=
> TK_XINCLUDES=
> TCL_LIB_SPEC=
> TCL_DL_LIBS=
> TCL_LIBS=
> TCL_STUB_LIBS=
> 
> NOTIFY=no
> CC=gcc
> CFLAGS=  -Wall -DVOL=volatile -fsigned-char -pipe -O3 -fomit-frame-
> pointer  -I$(GCLDIR)/o
> FINAL_CFLAGS=  -Wall -DVOL=volatile -fsigned-char -pipe
> NIFLAGS=  -Wall -DVOL=volatile -fsigned-char -pipe   -I$(GCLDIR)/o
> O3FLAGS=-O3 -fomit-frame-pointer
> O2FLAGS=-O
> 
> LD_STACK_FLAGS=
> 
> RL_OBJS=
> 
> RL_LIB=
> 
> MAKEINFO=makeinfo
> 
> FLISP=saved_gcl
> SYSTEM=gcl
> BUILD_BFD=
> GMPDIR=gmp3
> X_LIBS= -L/usr/X11R6/lib -lXmu -lXt -lXext -lXaw -lX11
> X_CFLAGS=
> 
> PROCESSOR_FLAGS=
> 
> EXTRA_LOBJS=
> LEADING_UNDERSCORE=
> GNU_LD=1
> add-defs1 386-linux
> using 386-linux.defs
> 
> [... lots of gcc invocations removed ...]
> 
> cat ../h/include.h | sed -e "/include/d" > ../h/mdefs.h
> gcc -Wall -DVOL=volatile -fsigned-char -pipe -O3 -fomit-frame-
> pointer  -I/common/mbs/mCryptol/gcl-2.7.0/o -I../h -I../o -o rsym rsym.c
> cp init_pre_gcl.lsp.in init_pre_gcl.lsp.tmp
> touch raw_pre_gcl_map
> gcc -o raw_pre_gcl  \
>          -L.   -Wl,-Map raw_pre_gcl_map   -lpre_gcl -Wl,-T ../
> unixport/gcl.script   -lm  -lgmp -lc -lgclp
> cat init_pre_gcl.lsp.tmp | sed \
>          -e "address@hidden@#(`cat ../majvers`.`cat ../minvers`) `date`#1" \
>          -e "address@hidden@#`cat ../minvers | cut -f2 -d.`#1" \
>          -e "address@hidden@#`cat ../minvers | cut -f1 -d.`#1" \
>          -e "address@hidden@#`cat ../majvers`#1" \
>          -e "address@hidden@#\"gcc -c -Wall -DVOL=volatile -fsigned-char -
> pipe \"#1" \
>          -e "address@hidden@#\"gcc  -o \"#1" \
>          -e "address@hidden@#\"   -lpre_gcl -Wl,-T ../unixport/
> gcl.script   -lm  -lgmp -lc -lgclp \"#1" \
>          -e "address@hidden@#\"-O3 -fomit-frame-pointer\"#1" \
>          -e "address@hidden@#\"-O\"#1" \
>          -e "address@hidden@#\"init_pre_gcl.lsp\"#1" >init_pre_gcl.lsp
> cp init_pre_gcl.lsp foo
> echo " (in-package \"USER\")(system:save-system \"saved_pre_gcl\")"
> >>foo
> /disk/umbra/0/mbs/mCryptol/gcl-2.7.0/unixport/raw_pre_gcl /disk/umbra/
> 0/mbs/mCryptol/gcl-2.7.0/unixport/ -libdir /common/mbs/mCryptol/
> gcl-2.7.0/ < foo
> 
> Unrecoverable error: Can't allocate.  Good-bye!.
> 
> 
> 
> 
> 
> 
> 

-- 
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]