scsh-users
[Top] [All Lists]

Can't build scsh 0.4.0 on SunOS 4.1.x

To: scsh-bugs@martigny.ai.mit.edu
Subject: Can't build scsh 0.4.0 on SunOS 4.1.x
From: pf@elissa.hc.ti.com (Paul Fuqua)
Date: Wed, 1 Nov 95 15:25:42 CST
     I believe I have a reasonably standard platform, a Sparc-10 with
SunOS 4.1.3_U1.  When I try to build scsh 0.4.0 (untar, ./configure,
make), it fails while trying to build cig/cig.image -- the error message
is "dlopen:  stub interception failed" and scshvm core-dumps.  The same
error happens on other Suns with 4.1.3 and 4.1.4.  Does this sound
familiar?
     Here's the last part of the transcript, followed by sysdep.h.
Please let me know if you need more information.

(echo ",batch"; \
 echo ",translate =scheme48/ ./"; \
 echo ",config ,load ./cig/cig.scm"; \
 echo ",config ,load ./cig/libcig.scm"; \
 echo ",load-package cig-aux"; \
 echo ",open define-foreign-syntax"; \
 echo ",translate =scheme48/ /usr/local/lib/scsh/"; \
 echo ",dump /tmp/cig \"(CIG Preloaded -bri)\"") \
| ./scshvm -o ./scshvm -i ./scheme48.image
Welcome to Scheme 48 0.36 (made by pf on Wed Nov  1 14:57:15 CST 1995).
Copyright (c) 1993, 1994 by Richard Kelsey and Jonathan Rees.
Please report bugs to scheme-48-bugs@martigny.ai.mit.edu.
Type ,? (comma question-mark) for help.
> Will exit on errors
./cig/cig.scm ....
Undefined: (cig-aux)
./cig/libcig.scm .
[cig-aux
[define-foreign-syntax
[externals
./big/external.scm .............
]
[for-syntax
[define-foreign-syntax-support
[formats
[extended-ports
[defrecord
./big/defrecord.scm 
]
./big/xport.scm ./big/new-ports.scm ............................................
.............................................................
]
./big/format.scm ......
]
[destructuring
./big/destructure.scm 
]
[receiving
./big/receive.scm 
]
...................................................
]
]
..
]
........dlopen: stub interception failed
sh: 7166 Abort - core dumped


/* sysdep.h.  Generated automatically by configure.  */
/* sysdep.h.in for Scheme 48.  Originally generated automatically from
   configure.in by autoheader, but then modified manually to add
   NLIST_HAS_N_NAME, etc.  The "configure" script creates sysdep.h
   from this file.  If "configure" doesn't work for you, copy this
   file to sysdep.h and make any appriopriate modifications.  If
   you're not sure what modifications would be appriopriate, it is
   generally safe to leave things as they are. */


/* Define const to empty if the ANSI C "const" keyword doesn't work.  */
/* #undef const */

/* Define this appropriately as the return value of a signal handler on
   your system. */
#define RETSIGTYPE void

/* Define FILE_HAS__CNT if streams, as defined in <stdio.h>, have _cnt
   components.  This is widespread but basically highly unportable.
   It is used in order to implement CHAR-READY?. */
#define FILE_HAS__CNT 1

/* Define HAVE_SELECT if the BSD-derived select() call is available.
   select() is used in order to implement CHAR-READY?. */
#define HAVE_SELECT 1

/* Define HAVE_SETITIMER if the BSD-derived setitimer() call is
   available.  In the absence of setitimer(), alarm() will be used.*/
#define HAVE_SETITIMER 1

/* Define HAVE_GETTIMEOFDAY if you have gettimeofday().  This is a BSD
   thing that returns elapsed time to the nearest microsecond (yeah,
   right).  In the absence of gettimeofday(), ftime() or time() will
   be used. */
#define HAVE_GETTIMEOFDAY 1

/* Define if you have ftime() and its associated header file sys/timeb.h.
   This is an ancient Unix version 7 thing, but if gettimeofday()
   isn't available then it may be the only way to get sub-second
   resolution for elapsed time. */
#define HAVE_FTIME 1
#define HAVE_SYS_TIMEB_H 1

/* Define if you have the nlist() function.  This is a
   not-very-portable way of looking up external symbols. */
#define HAVE_NLIST 1

/* Define if struct nlist, defined in <nlist.h>, has an n_name component.
   If it doesn't then we expect it to have an n_un component. */
#define NLIST_HAS_N_NAME 1

/* Define if you have dlopen() and related routines (dynamic linking
   of shared object files). */
#define HAVE_DLOPEN 1

/* Define if you have header file libgen.h.  This has something to do
   with locating shared object files. */
/* #undef HAVE_LIBGEN_H */

/* Define if you have the chroot() system call (quite inessential!). */
#define HAVE_CHROOT 1

/* Define if you have the Posix sigaction() call. */
#define HAVE_SIGACTION 1

/* Define if you have socket() and related functions. */
#define HAVE_SOCKET 1

/* Define if Posix "time.h" include file is <posix/time.h> instead of
   the standard <time.h>.  (MIPS RISC/OS) */
/* #undef POSIX_TIME_H */

/* Define this if /bin/ld exists and accepts a BSD-style -A argument
   (for dynamic loading of .o files). */
/* #undef ANCIENT_DYNLOAD */

/* Define if fd_set and friends need sys/select.h */
/* #undef HAVE_SYS_SELECT_H */

#if !defined(HAVE_SIGACTION)
struct sigaction {
  void (*sa_handler)();
  int sa_mask;
  int sa_flags;
};

/* for HPUX with CC */
/* #undef _HPUX_SOURCE */

/* for HPUX with CC */
/* #undef hpux */

#define sigaction(sig, act, oact) signal((sig), (act)->sa_handler)
#define sigemptyset(foo) 0
#endif

/* Under HPUX, select() is declared
      extern int select(size_t, int *, int *, int *, const struct timeval *);
   in sys/time.h.  This is brain-dead, since the FD_SET, FD_CLR, and FD_ZERO
   macros defined in HPUX's sys/types.h assume fd sets are a struct type, 
   and therefore blow up if given int *'s. So the four procedures that
   hack fd_set's are not even type-consistent, even under C's lame rules. 
   Give me a break. 
       -Olin
*/

#if defined(hpux)
# define select1(nfds, r, w, x, t) select(nfds, (int*)r, (int*)w, (int*)x, t)
#else
# define select1 select
#endif


/* Define USCORE if your c externals are prepended with an underscore */
#define USCORE 1

/* Define if you have POSIX tzname (Losing sunos4...). */
/* #undef HAVE_TZNAME */

/* Define if your tm struct in <time.h> has a tm_gmtoff field. */
#define HAVE_GMTOFF 1

/* Define if your sys_errlist is a const definition */
#define HAVE_CONST_SYS_ERRLIST 1

/* Include info we know about the system from config.scsh */
#include "scsh/machine/sysdep.h"



Paul Fuqua
Texas Instruments, Dallas, Texas                     pf@hc.ti.com

<Prev in Thread] Current Thread [Next in Thread>
  • Can't build scsh 0.4.0 on SunOS 4.1.x, Paul Fuqua <=