bugMIT/GNU Scheme - Bugs: bug #25868, Compilation fails on OpenSolaris...

 
 

bug #25868: Compilation fails on OpenSolaris 8/11 with Sun Studio compiler

Submitted by:  Antonio Vieiro <antoniov>
Submitted on:  Sat 14 Mar 2009 07:43:26 PM UTC  
 
Category: NoneSeverity: 3 - Normal
Priority: 5 - NormalItem Group: Incorrect behavior
Status: NonePrivacy: Public
Assigned to: NoneOriginator Name: 
Open/Closed: Open
Keywords: 

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Mon 01 Feb 2010 07:07:23 AM UTC, comment #4:

I would like to help get this compiling too. I have run into these issues stated but do not know how to fix them. Can some update the status on this? Also detailed build instructions as well as patches would be appreciated, thanks.

Richard Kowalski <avantopia>
Sun 15 Mar 2009 04:06:46 PM UTC, comment #3:

In microcode/configure.ac, find the clause in `case ${host_os}' for `solaris*', and set M4_FLAGS whether or not we're using GCC. Then run `make distclean && autoconf' in the microcode/ directory, and try again.

Taylor R. Campbell <riastradh>
Project Member
Sun 15 Mar 2009 11:59:15 AM UTC, comment #2:

I've added:

#ifdef __sun
#ifdef __i386
#include <sys/siginfo.h>
#include <sys/ucontext.h>
#endif
#endif

#ifdef __sparc
...

In uxtrap.h and compilation continues, but I get too many undefined symbols:

cc -lsocket -lnsl -o scheme artutl.o avltree.o bkpt.o bignum.o bigprm.o bitstr.o boot.o char.o daemon.o debug.o dfloat.o error.o extern.o fasdump.o fasl.o fasload.o fixnum.o flonum.o gcloop.o generic.o hooks.o hunk.o intern.o interp.o intprm.o list.o lookprm.o lookup.o memmag.o missing.o obstack.o option.o osscheme.o ostty.o outf.o prim.o primutl.o ptrvec.o purify.o purutl.o regex.o rgxprim.o step.o storage.o string.o syntax.o sysprim.o term.o transact.o tterm.o utils.o vector.o wind.o prosenv.o prosfile.o prosfs.o prosio.o prosproc.o prospty.o prosterm.o prostty.o pruxsock.o intext.o pruxenv.o pruxfs.o pruxio.o ux.o uxctty.o uxenv.o uxfile.o uxfs.o uxio.o uxproc.o uxsig.o uxsock.o uxterm.o uxtop.o uxtrap.o uxtty.o uxutil.o cmpauxmd.o terminfo.o pruxdld.o x11base.o x11term.o x11graph.o x11color.o cmpint.o cmpintmd.o comutl.o usrdef.o -lcurses -lm -lX11
Undefined first referenced
symbol in file
asm_nofp_remainder cmpintmd.o
asm_generic_positive cmpintmd.o
_Free cmpauxmd.o
asm_nofp_equal cmpintmd.o
asm_generic_decrement cmpintmd.o
asm_generic_increment cmpintmd.o
interface_to_scheme cmpint.o
ia32_cpuid_needed fasload.o

I'd appreciate some more guidelines on how to proceed with the build.

Antonio Vieiro <antoniov>
Sat 14 Mar 2009 08:15:17 PM UTC, comment #1:

I'm afraid I know too little about OpenSolaris's representation of signal and machine context to help much here, but in the pile of cpp conditional gobbledegook at the top of uxtrap.h, it may suffice to find the right place to put a conditional for OpenSolaris on whatever architecture you're using (I'm guessing OpenSolaris on x86 or x86-64; you might put this after the section for Solaris on SPARC), and in that conditional include <ucontext.h> or <sys/ucontext.h>. If that doesn't work, there may be another system header file defining siginfo_t and ucontext_t (although <ucontext.h> should work if _POSIX_REALTIME_SIGNALS is set, which the error message suggests is the case). Otherwise, you'll need to learn all about the horrible grody details of signal and machine context representations on OpenSolaris and fill in the details analogous to the other platforms there listed.

Taylor R. Campbell <riastradh>
Project Member
Sat 14 Mar 2009 07:43:26 PM UTC, original submission:

cc -DHAVE_CONFIG_H -DMIT_SCHEME -DDEFAULT_LIBRARY_PATH=\"/SPACE/SOFTWARE/SCHEME/mit-2090107/lib/mit-scheme\" -I. -I. -g -o pruxenv.o -c pruxenv.c
"uxtrap.h", line 733: syntax error before or at: *
"uxtrap.h", line 736: syntax error before or at: ucontext_t
"uxtrap.h", line 736: warning: undefined or missing type for: ucontext_t
cc: acomp failed for pruxenv.c
make: *** [pruxenv.o] Error 2

Maybe an additional check is needed in configure.in?

I can test compilation on OpenSolaris 8/11 with Sun Studio compiler. Let me know how I can be of help.

Antonio Vieiro <antoniov>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by avantopia (Posted a comment)
  • -unavailable- added by riastradh (Posted a comment)
  • -unavailable- added by antoniov (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    No Changes Have Been Made to This Item

    Back to the top


    Powered by Savane 3.1-cleanup