bug-libtool
[Top][All Lists]
Advanced

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

Re: 2.2.7a: unresolved external symbol _lt_libltdlc_LTX_preloaded_symbol


From: Akim Demaille
Subject: Re: 2.2.7a: unresolved external symbol _lt_libltdlc_LTX_preloaded_symbols
Date: Thu, 27 Nov 2008 20:52:12 +0100


Le 27 nov. 08 à 19:41, Ralf Wildenhues a écrit :

First of all, it is my understanding (from what told my Matthieu) that
VC++ will not make dynamic libraries (*.lib) in addition to dlopen-
modules (*.dll) unless there are dllexport requests.

I'm afraid this is not quite correct, on a couple of accounts. On w32,
shared libraries are *.dll (case-insensitively).

Yet, still according to our understanding, you can't link (at least using VC++) directly against a *.dll, you need a *.lib, which is merely a stub pointing to the *.dll.

Static libraries are *.lib if created by MSVC.

I am really referring to dynamic libraries here. But that may be what you mean below.

The patch I sent, because it uses dllexport, helps VC++ understand we want the *.lib in addition to the *.dll, which is what is needed afterwards by the example. Well, again, that's our understanding.

However, shared libraries typically *also*
come with import libraries alongside of them, which are *.lib or *.dll.a
(the latter is typical for using GCC in conjunction with MinGW, for
example, not MSVC).

On systems where shared libraries may not have undefined symbols (which includes w32), libtool will not create a shared libraries at -- mode=link
time unless you pass -no-undefined.

dllexport requests are yet another matter. Let's not go into detail on
this right now.

Do you have any up-to-date and accurate reading to suggest?





reply via email to

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