[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
dlpreopen bug with cygwin
From: |
Robert Collins |
Subject: |
dlpreopen bug with cygwin |
Date: |
Wed, 6 Jun 2001 00:35:09 +1000 |
dlpreopen generates a list of symbols - say
extern char _imp__free;
<skip>
extern char nothing;
extern char printf;
extern char realloc;
from the source library - cyghello-2.dll
"nothing" here should be extern __declspec(dllimport) char nothing;
"_imp__free" shouldn't be present, because the actual symbol is in a
different library. Or if it is present it should also be extern
__declspec(dllimprt)...
I'm not quite sure how to approach this, but my tentative logic is:
if the library we are reading symbols from is a .dll, throw away __imp__
symbols, and make all normal appearing symbols __declspec(dllimport).
Is this likely to introduce any headaches ? Am I heading up the wrong
tree?
(background: demo-make after demo-shared is failing on helldl for this
reason: the symbol nothing cannot be found. helldl is compiled as PIC
which means with -DDLL_EXPORT, so it's looking for the __imp__nothing
symbol in the link library, but thats not there - because of the above.
Rob
- dlpreopen bug with cygwin,
Robert Collins <=