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 15:07:52 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

OK, why don't you try this patch:

=============================================================================
Index: configure.in
===================================================================
RCS file: /cvsroot/gcl/gcl/configure.in,v
retrieving revision 1.195
diff -u -r1.195 configure.in
--- configure.in        9 Aug 2005 01:14:41 -0000       1.195
+++ configure.in        14 Sep 2005 19:06:14 -0000
@@ -1244,9 +1244,28 @@
 AC_MSG_RESULT($cstack_direction)
 
 
+AC_MSG_CHECKING(for shared library/C stack ceiling to heap)
+if test "$use" = "mingw" ; then
+  heap_ceiling=2000000000
+else
+echo "int main() {return 0;}" >foo.c
+$CC foo.c -o foo
+heap_ceiling=`ldd foo | tail -n 1 | awk '{print $NF}' | tr -d '()'`
+AC_TRY_RUN([#include <stdio.h>
+int main() {
+    FILE *fp=fopen("conftest1","w");
+    unsigned long h=$heap_ceiling,d=$dbegin,c=$cstack_address;
+    h=h<d ? 0 : h;
+    h=c>d && c<h ? c : h;
+    fprintf(fp,"0x%lx",h);
+    return 0;}],heap_ceiling=`cat conftest1`,echo failed;exit 1,echo 
failed;exit 1)
+fi
+AC_MSG_RESULT($heap_ceiling)
+AC_DEFINE_UNQUOTED(SHARED_LIB_HEAP_CEILING,$heap_ceiling)
+
 ## Don't lower heap start if C stack is below default dbegin, as we're
 # likely to get more heap this way.
-if awk 'END {exit (unsigned long)d<(unsigned long)c ? 0 : 1}' d=$dbegin 
c=$cstack_address /dev/null ; then
+if awk 'END {exit h && (unsigned long)d<(unsigned long)c ? 0 : 1}' 
h=$heap_ceiling d=$dbegin c=$cstack_address /dev/null ; then
 
    AC_MSG_CHECKING("finding default linker script")
    touch unixport/gcl.script
@@ -1323,25 +1342,6 @@
    LDFLAGS="$old_LDFLAGS"
 fi
 AC_DEFINE_UNQUOTED(DBEGIN,$dbegin)
-
-AC_MSG_CHECKING(for shared library/C stack ceiling to heap)
-if test "$use" = "mingw" ; then
-  heap_ceiling=2000000000
-else
-echo "int main() {return 0;}" >foo.c
-$CC foo.c -o foo
-heap_ceiling=`ldd foo | tail -n 1 | awk '{print $NF}' | tr -d '()'`
-AC_TRY_RUN([#include <stdio.h>
-int main() {
-    FILE *fp=fopen("conftest1","w");
-    unsigned long h=$heap_ceiling,d=$dbegin,c=$cstack_address;
-    h=h<d ? 0 : h;
-    h=c>d && c<h ? c : h;
-    fprintf(fp,"0x%lx",h);
-    return 0;}],heap_ceiling=`cat conftest1`,echo failed;exit 1,echo 
failed;exit 1)
-fi
-AC_MSG_RESULT($heap_ceiling)
-AC_DEFINE_UNQUOTED(SHARED_LIB_HEAP_CEILING,$heap_ceiling)
 
 AC_MSG_CHECKING(for maxpage revision)
 AC_TRY_RUN([#include <stdio.h>
=============================================================================

apply, then run autoconf, and then build as normal.  Please let me
know if it doesn't work for you.

Alternatively, try getting configure.in and configure from CVS head --
am checking this in shortly.

Take care,

Mark Shields <address@hidden> writes:

> Hello again,
> 
> > 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.
> 
>  From the output:
> 
> 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
> 
> > 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.
> 
> Oh, I forgot to mention this is a RedHat CentOS 4 system. If you
> think retreating to an earlier version would be easiest then we could
> do that.
> 
> > 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.
> 
> Here it is:
> 
> 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
> 
> 
> Many thanks,
> Mark
> 
> 
> 

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