[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problem with libtool and mingw 4.4 with dwarf exceptions.
From: |
mefyl |
Subject: |
Re: Problem with libtool and mingw 4.4 with dwarf exceptions. |
Date: |
Fri, 11 Sep 2009 09:38:55 +0200 |
User-agent: |
KMail/1.12.1 (Linux/2.6.29-gentoo-r5; KDE/4.3.1; i686; ; ) |
On Thursday 10 September 2009 20:09:38 Ralf Wildenhues wrote:
> Hello mefyl,
>
> * mefyl wrote on Thu, Sep 10, 2009 at 06:48:26PM CEST:
> > I'm facing a problem with libtool and gcc mingw 4.4 with dwarf
> > exceptions.
> >
> > When linking 'normally', by hand, it works fine. However, libtool uses
> > -nostdlib and links the program with standard libraries manually. The
> > exception becomes then impossible to catch - the try block is ignored and
> > the program aborts. Note that this happens only if the exception
> > traverses a DLL boundary.
> >
> > | # Works fine
> > | g++.exe -shared file.o -o file.dll
>
> Can you show the output of the above, with -v added?
>
> Thanks,
Sure:
$ g++.exe -shared -v lib.o -o lib.dll
Using built-in specs.
Target: mingw32
Configured with: ../gcc-4.4.0/configure
--enable-languages=c,ada,c++,fortran,java,objc,obj-c++
--disable-sjlj-exceptions --enable-shared --enable-libgcj --enable-libgomp
--with-dwarf2 --disable-win32-registry --enable-libstdcxx-debug
--enable-version-specific-runtime-
libs --prefix=/mingw --with-gmp=/mingw/src/gmp/root
--with-mpfr=/mingw/src/mpfr/root --build=mingw32
Thread model: win32
gcc version 4.4.0 (GCC)
COMPILER_PATH=z:/home/build/local-mingw-4.4-dwarf/bin/../libexec/gcc/mingw32/4.4.0/;z:/home/build/local-mingw-4.4-dwarf/bin/../libexec/gcc/;z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/
LIBRARY_PATH=z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/;z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/;z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/lib/;z:/home/build/local-mingw-4.4-
dwarf/bin/../lib/gcc/mingw32/4.4.0/../../../
COLLECT_GCC_OPTIONS='-shared' '-v' '-o' 'lib.dll' '-shared-libgcc' '-mtune=i386'
z:/home/build/local-mingw-4.4-dwarf/bin/../libexec/gcc/mingw32/4.4.0/collect2.exe
--shared -Bdynamic -e address@hidden --enable-auto-image-base -u
___register_frame_info -u ___deregister_frame_info -o lib.dll
z:/home/build/local-mingw-4.4-
dwarf/bin/../lib/gcc/mingw32/4.4.0/../../../dllcrt2.o
z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/crtbegin.o
-Lz:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0
-Lz:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc -
Lz:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/lib
-Lz:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/../../..
lib.o -lstdc++ -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -luser32
-lkernel32 -ladvapi32 -
lshell32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt
z:/home/build/local-mingw-4.4-dwarf/bin/../lib/gcc/mingw32/4.4.0/crtend.o
$
I'm sure libtool has its reason for doing so, but is there a way to ask
it to let the compiler handle system libraries, as a temporary
workaround?
Thanks,
--
mefyl - R&D engineer at Gostai - http://www.gostai.com