This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem installing 3.3.2


"Jonathan Willcock" <Jonathan@FESoftware.com> writes:

> make eventually stops with the following error:
> 
> In file included from tconfig.h:23,
> 		     from libgcc2.c:36:
> config/i386/linux.h:233:26: sys/ucontext.h: No such file or directory
> make[2]: *** [libgcc/./_muldi3.o] Error 1
> make[2]: Leaving directory '/home/jw/gcc-3.3.2/gcc'
> make[1]: *** [libgcc.a] Error 2
> make[2]: Leaving directory '/home/jw/gcc-3.3.2/gcc'
> make: *** [all-gcc] Error 2
> 
> As background info:
> 
> My kernel is Linux 2.2.16.
> 
> ucontext.h is in /usr/src/linux-2.2.16/linux/include/asm-i386 (amongst
> others).
> 
> Do I need to copy this elsewhere?  I could not find a sys directory.
> 
> I am trying to do this because gettext does not compile.  I need to
> recompile gettext, because glib does not compile.  I need glib because gtk
> does not .. I need gtk because netscape ...   .  "... She swallowed the
> spider to catch the fly, I don't why she swallowed the fly. Perhaps she'll
> die."

Which version of glibc do you have?

The current sources have this patch which is not in 3.3:

Index: linux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/linux.h,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- linux.h	7 Jun 2003 17:11:45 -0000	1.47
+++ linux.h	19 Jun 2003 04:46:29 -0000	1.48
@@ -234,7 +234,7 @@
    signal-turned-exceptions for them.  There's also no configure-run for
    the target, so we can't check on (e.g.) HAVE_SYS_UCONTEXT_H.  Using the
    target libc1 macro should be enough.  */
-#ifndef USE_GNULIBC_1
+#if !(defined (USE_GNULIBC_1) || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 0))
 #include <signal.h>
 #include <sys/ucontext.h>
 

Perhaps that will make a difference for you.  For that matter, it
won't really hurt to just make that line `#if 0'.  It's there to let
the compiler unwind the stack through a signal call.  That means it is
only useful for C++/Java code in which a signal handler throws an
exception.  You don't need it otherwise.

Ian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]