Camm, I am trying to build gcl-2.6.8pre on a Solaris 10.2 x86 machine. I have the gnu toolchain installed from
http://www.blastwave.org (unstable) Blastwave provides a pkg-get which is like apt-get for Debian and works with Solaris on both sparc and x86 hardware. It would be real nice if gcl was packaged for Solaris pkg-get! :-) Maybe I will try to get around to that later. But right now I have problems building gcl on my Solaris x86 system. ./configure completes without error but I get the following error when trying to build: ... gcc -I/export/home0/wspage/gcl/o -DVOL=volatile -fsigned-char -I../h -I../gcl-tk -o ../bin/dpp ../bin/dpp.c /var/tmp//ccgP9elS.o: In function `read_token': dpp.c:(.text+0x21f): undefined reference to `isalphanum' collect2: ld returned 1 exit status make[1]: *** [../bin/dpp] Error 1 make[1]: Leaving directory `/export/home0/wspage/gcl/o' make: *** [h/new_decl.h] Error 2 ------------- Looking at dpp.c it appears that I need at least the UNIX symbol defined. The configure log shows that gcl is trying to use solaris-i386 but the file 'h/solaris-i386.h' is empty in the gcl-2.6.8pre source distribution although 'h/solaris-i386.defs is present. So I tried: $ cp h/solaris.h h/solaris-i386.h and patched it as follows: -bash-3.00$ gdiff -au h/solaris.h h/solaris-i386.h --- h/solaris.h 2007-03-22 00:11:40.755214000 -0400 +++ h/solaris-i386.h 2007-03-22 00:13:22.792338000 -0400 @@ -16,11 +16,10 @@ #endif #define ADDITIONAL_FEATURES \ - ADD_FEATURE("SUN"); \ - ADD_FEATURE("SPARC") + ADD_FEATURE("SUN") -#define SPARC #define SGC +#define UNIX #define PTR_ALIGN 8 ---------- Now the build proceeds much further but stops here: gcc -I/export/home0/wspage/gcl/o -DVOL=volatile -fsigned-char -c -c -I../h -I../gcl-tk -I../h -I../h -I../gcl-tk unixfsys.c In file included from ../h/include.h:37, from unixfsys.c:28: ../h/config.h:1:1: warning: "__ELF__" redefined <built-in>:78:1: warning: this is the location of the previous definition unixfsys.c:508: error: conflicting types for 'ctime_r' /usr/include/time.h:299: error: previous declaration of 'ctime_r' was here unixfsys.c:508: error: conflicting types for 'ctime_r' /usr/include/time.h:299: error: previous declaration of 'ctime_r' was here make[1]: *** [unixfsys.o] Error 1 make[1]: Leaving directory `/export/home0/wspage/gcl/o' make: *** [unixport/saved_pre_gcl] Error 2 ---------- Next because I was suspicious of the existing solaris-i386.defs I tried $ cp h/solaris.defs h/solaris-i386.defs in addition to the above patch to 'h/solaris-i386.h'. This failed the same way as above. So I commented out the following line in 'o/unixfsys.c' /* extern char *ctime_r(const time_t *,char *); */ And re-started make. This time I nearly made it but failed with the error "NULL_OR_ON_C_STACK macro invalid" when starting raw_pre_gcl for the first time: ... touch raw_pre_gcl_map gcc -o raw_pre_gcl \ -L. -Wl,-Map raw_pre_gcl_map -lpre_gcl -lSM -lICE -L/usr/openwin/lib -R/usr/openwin/lib -lXmu -lXt -lXext -lXaw -lX11 -lsocket -lnsl -lm -lsocket -lnsl -lc -lgclp cat init_pre_gcl.lsp.tmp | sed \ -e "[EMAIL PROTECTED]@#(`cat ../majvers`.`cat ../minvers`) `date`#1" \ -e "[EMAIL PROTECTED]@#`cat ../minvers | cut -f2 -d.`#1" \ -e "[EMAIL PROTECTED]@#`cat ../minvers | cut -f1 -d.`#1" \ -e "[EMAIL PROTECTED]@#`cat ../majvers`#1" \ -e "[EMAIL PROTECTED]@#\"gcc -c -I/usr/openwin/include -Wall -DVOL=volatile -fsigned-char -pipe \"#1" \ -e "[EMAIL PROTECTED]@#\"gcc -o \"#1" \ -e "[EMAIL PROTECTED]@#\" -lpre_gcl -lSM -lICE -L/usr/openwin/lib -R/usr/openwin/lib -lXmu -lXt -lXext -lXaw -lX11 -lsocket -lnsl -lm -lsocket -lnsl -lc -lgclp \"#1" \ -e "[EMAIL PROTECTED]@#\"-O3 -fomit-frame-pointer\"#1" \ -e "[EMAIL PROTECTED]@#\"-O\"#1" \ -e "[EMAIL PROTECTED]@#\"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 /export/home0/wspage/gcl/unixport/raw_pre_gcl /export/home0/wspage/gcl/unixport/ -libdir /export/home0/wspage/gcl/ < foo GCL (GNU Common Lisp) April 1994 131072 pages Unrecoverable error: NULL_OR_ON_C_STACK macro invalid. /bin/bash: line 1: 27811 Abort (core dumped) /export/home0/wspage/gcl/unixport/raw_pre_gcl /export/home0/wspage/gcl/unixport/ -libdir /export/home0/wspage/gcl/ <foo make[1]: *** [saved_pre_gcl] Error 134 rm raw_pre_gcl make[1]: Leaving directory `/export/home0/wspage/gcl/unixport' make: *** [unixport/saved_pre_gcl] Error 2 ---------- Any ideas? Is anyone else trying to build gcl on Solaris/x86? Regards, Bill Page. _______________________________________________ Gcl-devel mailing list Gcl-devel@gnu.org http://lists.gnu.org/mailman/listinfo/gcl-devel