Bug 29476 - [cygwin] gcc compilation is broken
Summary: [cygwin] gcc compilation is broken
Status: RESOLVED WONTFIX
Alias: None
Product: gcc
Classification: Unclassified
Component: boehm-gc (show other bugs)
Version: 4.2.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-10-15 10:30 UTC by Marco Trudel
Modified: 2007-03-09 15:30 UTC (History)
1 user (show)

See Also:
Host: i686-pc-cygwin
Target: i686-pc-cygwin
Build: i686-pc-cygwin
Known to work:
Known to fail:
Last reconfirmed:


Attachments
Patch to get Serialization to work. It only works without the recent SJLJ exception handling changes. (407 bytes, patch)
2006-11-21 13:15 UTC, Marco Trudel
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Marco Trudel 2006-10-15 10:30:11 UTC
boehm-gc/misc.c compiles fine, but later when it's linked into another lib, this "undefined reference" occures:

/cygdrive/d/marco/GCC/build/gcc/gcj -B/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libjava/ -B/cygdrive/d/marco/GCC/build/gcc/ -ffloat-store -fomit-frame-pointer -g -O2 -o jv-convert.exe --main=gnu.gcj.convert.Convert -shared-libgcc -L/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libjava -L/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libjava/.libs ./.libs/libgcj.a -L/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libstdc++-v3/src -L/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libstdc++-v3/src/.libs -ldl -L/cygdrive/d/marco/GCC/build/./gcc -lgcc -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc
./.libs/libgcj.a(misc.o): In function `GC_init_inner':
/cygdrive/d/marco/GCC/source/boehm-gc/misc.c:681: undefined reference to `_GC_get_thread_stack_base'
collect2: ld returned 1 exit status
make[3]: *** [jv-convert.exe] Error 1
make[3]: Leaving directory `/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libjava'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/cygdrive/d/marco/GCC/build/i686-pc-cygwin/libjava'
make[1]: *** [all-target-libjava] Error 2
make[1]: Leaving directory `/cygdrive/d/marco/GCC/build'
make: *** [all] Error 2


The "GC_get_thread_stack_base" is in gc.h, but including it didn't help.

I compile with:

/cygdrive/d/marco/GCC/source/configure --prefix=/cygdrive/d/marco/GCC/out \
    --enable-languages=c,c++,java \
    --disable-nls --disable-debug --disable-shared --disable-checking \
    --enable-threads=posix --disable-win32-registry --enable-sjlj-exceptions \
    --enable-libgcj
Comment 1 Marco Trudel 2006-11-21 13:15:23 UTC
Created attachment 12661 [details]
Patch to get Serialization to work. It only works without the recent SJLJ exception handling changes.
Comment 2 Marco Trudel 2006-11-21 13:20:17 UTC
Comment on attachment 12661 [details]
Patch to get Serialization to work. It only works without the recent SJLJ exception handling changes.

That patch is for another bug, forget about it...
Comment 3 Marco Trudel 2007-03-09 14:05:37 UTC
I close this bug as "WONTFIX" because there's no active cygwin maintainer for libjava. So, if it's not fixed already, it probably won't be fixed anyway.
I just once tested it for fun :-)
Comment 4 Manuel López-Ibáñez 2007-03-09 15:30:38 UTC
(In reply to comment #3)
> I close this bug as "WONTFIX" because there's no active cygwin maintainer for
> libjava. So, if it's not fixed already, it probably won't be fixed anyway.
> I just once tested it for fun :-)
> 

Hum, perhaps someone will step in in the future...