Hi,
On 14.08.2013 15:06, K. Frank wrote:
I downloaded the 64-bit mingw-w64 version of libcurl:

    curl-7.31.0-devel-mingw64.7z

and installed it by unzipping the file.

In its lib64 directory I find

    libcurldll.a
    libssh2dll.a

I might have expected them to be named

    libcurl.dll.a
    libssh2.dll.a

with an additional dot ('.') preceding the "dll."

This would have been consistent with the naming of the other
libraries, e.g., libcrypto.dll.a, and seemingly more consistent
with the naming of the .a and .def files.
true, but ...

It's hardly a big deal -- in my compile command I specify
"-lcurldll" rather than "-lcurl", and everything works.  But
I'm wondering if this choice of naming was intentional, and
if so, what the reasoning is.
its exactly that: you can easily decide to link either statically or dynamically; if you have both a libcurl.a and libcurl.dll.a in the same directory the linker will always prefer to link against the *.dll.a; if you specify -static then that counts for *all* libs; you cant f.e. link one library statically and another dynamically unless you remove the dynamic link libraries for those libs you want to link statically ...

if I have a lot of time (very unlikely ATM) then I might dig into the MinGW makefiles, and modify them to use -l only for dynamic linkage and for static linkage only add the static lib with full path - that should work ...

Gün.




-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to