(#3) STK 2.2 bad build, Unix BSD 4.3

From: John Boller <jboller_at_panix.com>
Date: Wed, 27 Sep 1995 12:37:25 -0400

Hi!

I had several problems with STk 2.2 building on my
NeXTStation (Motorola 68040) running NeXTStep 3.0,
Unix BSD 4.3, and X11R5.
I have GNU gcc version 2.6.3.

I got a response in which it was suggested I try to make sure
all the includes were existing
> Date: Wed, 27 Sep 1995 11:31:59 +0100
> From: Hilmar Lapp <hili_at_al-bundy.biologie.uni-freiburg.de>
> Subject: Re: STk 2.2, bad build, BSD 4.3, M68040

After doing so, I continue to get load errors.
> ld: Undefined symbols:
> _S_ISDIR
> _S_ISREG
> _WEXITSTATUS
> make[2]: *** [stk-bin] Error 1

Any help would be appreciated. I have appended my build-specific
information, my code additions, and the resuld make/ld error.
Any help would be greatly appreciated!

Thanks, John Boller
jboller_at_panix.com


=================================================
CONFIGURATION
I had several problems with STk 2.2 building on my
NeXTStation (Motorola 68040) running NeXTStep 3.0,
Unix BSD 4.3, and X11R5.
I have GNU gcc version 2.6.3.

root_at_maverick /mount/st41600_1/usr/local/src/tcl/STk/STk-2.2.0
77 % ./configure
loading cache ./config.cache
./configure: uname: not found
./configure: uname: not found
./configure: uname: not found
checking for ranlib... (cached) ranlib
Using 'gcc' compiler
Using '-O2' compilation options
Assumming OS is unknown
Multiple precision library: libgmp
Hash tables support: yes
Posix support: yes
STklos support: yes
Socket support: yes
Regexp support: yes
Process support: yes
checking how to run the C preprocessor... (cached) gcc -E
checking for X... (cached) libraries , headers
checking for POSIXized ISC... no
checking for -lICE... (cached) no
checking for -ldnet... (cached) no
checking for -ldnet_stub... (cached) no
checking for -lnsl... (cached) no
checking for -lsocket... (cached) no
Determining options for dynamic loading for unknown
 (I don't know how to make shared libraries for unknown)

updating cache ./config.cache
creating ./config.status
creating Makefile
**** Configuring Src directory
creating cache ./config.cache
checking how to run the C preprocessor... gcc -E
checking for unistd.h... yes
checking for -ldl... no
checking for sigaction... no
checking for select... yes
checking whether cross-compiling... no
checking for ANSI C header files... yes
checking for pid_t... no
not updating unwritable cache ./config.cache
creating ./config.status
creating Makefile
**** Configuring Extensions directory
creating cache ./config.cache
checking how to run the C preprocessor... gcc -E
checking for unistd.h... yes
checking for sigaction... no
not updating unwritable cache ./config.cache
creating ./config.status
creating Makefile
**** Configuring Tcl directory
loading cache ./config.cache
checking for ranlib... ranlib
checking for tclsh... no
checking for getcwd... no
checking for opendir... yes
checking for strerror... yes
checking for strstr... yes
checking for strtol... yes
checking for tmpnam... yes
checking for waitpid... no
checking for gettimeofday... yes
checking for getwd... yes
checking for wait3... yes
checking for sin... yes
checking for -lieee... no
checking how to run the C preprocessor... gcc -E
checking for unistd.h... yes
checking for dirent.h
checking for errno.h... yes
checking for float.h... yes
checking for limits.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for sys/time.h... yes
checking for sys/wait.h... yes
checking for strstr.o
checking whether cross-compiling... no
checking for strtoul... yes
checking for strtod... yes
checking for ANSI C header files... yes
checking for mode_t... no
checking for pid_t... no
checking for size_t... yes
checking for uid_t in sys/types.h... yes
checking for opendir... (cached) yes
checking for sys_errlist
checking for union wait
checking for matherr support
checking for vfork... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
**** Configuring Tk directory
checking for unistd.h
checking how to run the C preprocessor
checking for sys/select.h
checking for fd_set
checking for proper stdlib.h
checking for mode_t in sys/types.h
checking for pid_t in sys/types.h
checking for size_t in sys/types.h
checking for uid_t in sys/types.h
creating config.status
creating Makefile
root_at_maverick /mount/st41600_1/usr/local/src/tcl/STk/STk-2.2.0
78 %

=================================================
CHANGES MADE TO CODE IN STk-2.2.0/Src
unix.c
------------------------------------------
#include <sys/fcntl.h> /* line 25 added JMB */
#include <sys/dir.h> /* line 26 added JMB */
#include <sys/dirent.h> /* line 27 added JMB */

      entryPtr = (struct dirent *)readdir(d); /* line 289 cast added JMB */
------------------------------------------

posix.c
------------------------------------------
#include <sys/fcntl.h> /*line 25 added JMB */
------------------------------------------

=================================================
SAMPLE MAKE
root_at_maverick /mount/st41600_1/usr/local/src/tcl/STk/STk-2.2.0
155 % make

make Tcl
make[1]: `libtcl.a' is up to date.
make Tk
make[1]: `libtk.a' is up to date.
make Mp
make[1]: `libgmp.a' is up to date.
make Src
make stk-bin TK="-DUSE_TK"
/bin/rm -f libstk.a
ar rc libstk.a stk.o slib.o primitives.o boolean.o char.o str.o vector.o gc.o po
rt.o number.o list.o symbol.o read.o print.o eval.o env.o macros.o syntax.o con
t.o io.o sport.o promise.o error.o proc.o keyword.o dump.o address.o dynload.o u
nix.o toplevel.o argv.o extend.o dummy.o tk-main.o tk-glue.o tk-util.o tcl-lib.
o tcl-util.o tcl-trace.o hash.o posix.o stklos.o gf.o socket.o sregexp.o proces
s.o
ranlib libstk.a
ranlib: file: libstk.a(dummy.o) has no symbols
/bin/rm -f stk-bin
gcc -O2 -DSTK_VERSION=\"2.2\" -DMACHINE=\"--\" -DUSE_TK -DSTk_CODE -Dunknown -DUSE_HASH -DUSE_POSIX -DUSE_STKLOS -DUSE_SOCKET -DUSE_REGEXP -DUSE_PROCESS
-DHAVE_UNISTD_H=1 -DHAVE_SELECT=1 -DSTDC_HEADERS=1 -Dpid_t=int -I. -I../Tk -I../Tcl -I../Mp -o stk-bin userinit.o libstk.a ../Mp/libgmp.a ../Tk/libtk.a ../Tcl/libtcl.a -lX11 -lm
ld: Undefined symbols:
_S_ISDIR
_S_ISREG
_WEXITSTATUS
make[2]: *** [stk-bin] Error 1
make[1]: *** [stk] Error 1
make: *** [src] Error 1

=================================================
Received on Wed Sep 27 1995 - 17:43:53 CET

This archive was generated by hypermail 2.3.0 : Mon Jul 21 2014 - 19:38:59 CEST