Multiple Definition of "_Unwind_Resume"

Simon Josefsson simon at
Sun Aug 23 17:26:20 CEST 2009

"Hoyt, David" <hoyt6 at> writes:

> I'm using mingw gcc 4.4.0 w/ dw2 exception handling on a windows xp machine. I'm using the latest source (I think - v2.8.3). When compiling, I get a multiple definition error for "_Unwind_Resume." The shared libraries (dlls) compile fine, but it errors out when attempting to link a test C++ program. I didn't used to get any errors like this, but I was using a slightly older version of gcc and it was using SJLJ exception handling. Here's the output:
> libtool: link: g++ -g -O2 -Wl,--exclude-libs=libintl.a -o .libs/ex-cxx.exe ex-cxx.o  ./.libs/libexamples.a ../../lib/.libs/libgnutls.dll.a ../../libextra/.libs/libgnutls-extra.dll.a ../../gl/.libs/libgnu.a ../../lib/.libs/libgnutlsxx.dll.a /C/Build/Windows/Win32/Release/obj/gnutls/lib/.libs/libgnutls.dll.a -lz /C/Build/Windows/Win32/Release/lib/libgcrypt.dll.a /C/Build/Windows/Win32/Release/lib/libgpg-error.dll.a -lws2_32 -L/C/Build/Windows/Win32/Release/obj/gnutls/lib/.libs -L/C/Build/Windows/Win32/Release/obj/gnutls/libextra/.libs -L/C/Build/Windows/Win32/Release/lib -L/C/Build/Windows/Win32/Release/libc
> :/msys/mingw/bin/../lib/gcc/mingw32/4.4.0-dw2/libgcc_eh.a(unwind-dw2.o): In function `Unwind_Resume':
> d:\crossdev\b4.4.0-tdm-1\mingw32\libgcc/../../../gcc-4.4.0/libgcc/../gcc/ multiple definition of `_Unwind_Resume'
> ../../lib/.libs/libgnutlsxx.dll.a(d000015.o):(.text+0x0): first defined here
> collect2: ld returned 1 exit status
> make[4]: *** [ex-cxx.exe] Error 1
> If there's a way to avoid compiling and running this particular test, that wouldn't be ideal, but it would be "okay" enough for now.
> I appreciate any help anyone can offer.

I am sorry I have no idea how to resolve this.  I suspect it is not a
strictly GnuTLS-related problem, so you may get more help asking some
mingw/gcc/c++ forum instead.  It could be a bug in how the libgnutlsxx
library is built.


More information about the Gnutls-help mailing list