Can't build the latest snapshot with gcc-2.95.2-1.
Mumit Khan
khan@NanoTech.Wisc.EDU
Thu May 18 10:43:00 GMT 2000
On 19 May 2000, Kazuhiro Fujieda wrote:
> I can't build the latest snapshot properly with gcc-2.95.2-1 as
> the following.
>
> gcc -o mount.exe mount.o -lnetapi32 -ladvapi32
> mount.o(.text+0x29):mount.cc: undefined reference to `muto::~muto(void)'
> /Home/fujieda/cygwin/snap/OBJ/i686-pc-cygwin/winsup/cygwin/libcygwin.a(libccrt0.o)(.text+0x29):libccrt0.cc: undefined reference to `muto::~muto(void)'
> collect2: ld returned 1 exit status
> make[1]: *** [mount.exe] Error 1
> make[1]: Leaving directory `/Home/fujieda/cygwin/snap/OBJ/i686-pc-cygwin/winsup/utils'
> make: *** [utils] Error 2
This is being triggered by the defintion of __mbuf in the inline
definition of sigthread::init() (sigproc.h). At this point I don't
know where the problem is, but it has to do with the fact that
__mbuf is `static __attribute__((section(".data_cygwin_nocopy")))'.
> As far as I look into the output of `nm libccrt0.o' (attached
> below), the compiler seems to put the unnecessary reference to
> the destructor into the libccrt0.o. Should I use the latest
> snapshot of GCC?
GCC snapshots produce the same behaviour. It's probably a bug in GCC
-- once you start using section attributes and all that, things pretty
hairy in C++. We need to find a reasonably workaround.
Regards,
Mumit
More information about the Cygwin-developers
mailing list