Hello Steve,

* Steve Edwards wrote on Thu, Jan 08, 2009 at 05:51:27PM CET:
> This is just a request to find out if anyone out there has tried using
> libtool to build Fortran DLLs under mingw32?

First question I'd ask: which gfortran version, and can it (or a newer
available version) build a shared libgfortran?  That should avoid the
problems you're having, I hope.

Looking at the FSF GCC tree, it doesn't seem like they're building
shared libgfortran shared on w32 yet (but I don't know whether
MinGW/MSYS has modified GCC in this regard).  Guess it's worth asking
about this (on either, not both) upstream.  A fix could be as easy as
adding -no-undefined to libgfortran/Makefile.am and AC_LIBTOOL_WIN32_DLL
to libgfortran/configure.ac.

> The problem was when a Fortran program in the library package
> tries to link against the created DLL (it was actually a test case
> wrapper)
> 
> It fails with a number of multiple definition errors:
> 
> __gfortran_set_options
> __gfortran_transfer_character
> __gfortran_st_write_done
> __gfortran_st_write
> 
> 
> It appears that the DLL creation has pulled in symbols from the
> libgfortran compiler runtime?
> 
> Am I correct in assuming that this is due to the gfortran runtime not
> being available in DLL form?

Probably.  A quick workaround would appear to be to use either one of
'-export-symbols FILE' or '-export-symbols-regex REGEX' with an argument
suitable of listing only the symbols from your library.  Untested.

Hope that helps.

Cheers,
Ralf


_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool

Reply via email to