libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extend libtool dll namespaces for mingw-w64


From: JonY
Subject: Re: Extend libtool dll namespaces for mingw-w64
Date: Tue, 26 Jan 2010 23:45:53 +0800
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080213 Thunderbird/2.0.0.12 Mnenhy/0.7.5.0

On 1/26/2010 23:52, Alon Bar-Lev wrote:
On Tue, Jan 26, 2010 at 5:26 PM, JonY<address@hidden>  wrote:
Hi,

Currently, on Win32 platforms, Cygwin uses the "cyg" prefix for dlls,
and MinGW based systems uses the "lib" prefix.

This works fine, until mingw-w64 showed up with 64bit dlls. This
problem is especially apparent with trying to build mingw-w64 cross
compilers.

For example, both mingw and mingw-w64 builds libstdc++-6.dll from GCC.
When installed, there might be up to 3 incompatible versions of
libstdc++-6.dll, from mingw.org, 32bit mingw-w64 and 64bit mingw-w64.

I suggest the following naming scheme.

mingw.org:      lib<name>-<major>.dll (unchanged)
Cygwin:         cyg<name>-<major>.dll (unchanged)
mingw-w64(64):  lib64<name>-<major>.dll
mingw-w64(32):  lib32<name>-<major>.dll

libtool should also check if GCC "-m32" or "-m64" is used, and select
the proper namespace accordingly (mingw-w64 GCC can do multilib).

Comments?


This is highly none standard naming convention...
Handling w32 and w64 should be the same as handling multilib at Linux
for example.

Alon.



Hi,

on Linux, I believe .so files go into /lib and lib{32,64}, not so on
Windows/MinGW, they go into the bindir.

So installing 32bit and 64bit dlls together into bindir is problematic.

The win32 dll loading is also not lenient, a 32bit exe encountering a 64bit dll will not load at all, unless there is a way to make PATH
different for 32bit and 64bit executables.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]