This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
FIXED: Troubles with DLL's
- To: <gnu-win32 at cygnus dot com>
- Subject: FIXED: Troubles with DLL's
- From: "Roger René Kommer" <roger at isp dot uni-kassel dot de>
- Date: Sat, 21 Feb 1998 16:42:48 +0100
- Cc: "Mikey" <jeffdb at netzone dot com>
Hi,
This must be an iron rule: If you post a question to a newsgroup or mailing
list next day - or even 5 minutes later -you found the answer by yourself.
In my last message I wrote:
> I use latest (I think) coolview and the linker from an archive
> 'B18-patched-ld'.
As I was able to figure out, that the linker of
B18-patched-link-compat-ld.tgz from <Mikey> causes the problems (size of
ld.exe 282.112 bytes)
If I use the b18 linker (size of ld.exe 265.216 bytes) relocating works.
I still using the dlltool.exe and the other files from
B18-patched-ld (org b18 dlltool.exe size: 175.104 bytes. dlltool, which I
use from patched version: 200.192 bytes).
If I reinstall b18 from scratch, even dlltest1.exe does not run properly,
but crashing somewhere inside the dll_crt0. Coolview must be installed.
I haven't tested it with Win95. In B18-patched-ld Mikey mentioned, that in
this fix a bug with terminating .reloc sections.
If you cannot compile the test packages, receiving an error while
linking like this:
undefined reference to _imp__dll1_global_char_ptr
your are using the original dlltool which export the pointer with the name
__imp_dll1_global_char_ptr (the underscores are important).
(Mikey: What is the reason that this is changed?)
You may have to change this in the makefile/scripts.
I'll append a modified shell script 'cygshared', which can be used for b18
ld/dlltool and patched dlltool (there is a flag --patched-dlltool).
I've tried to include all experiences I made last 2 weeks. I wrote also a
README, try to explain what to do to create a DLL easily and properly.
Somebody can put this stuff on web page or ftp-site. But before publish
this, maybe somebody should correct my English.
By the way: dllfix.exe produces a gpf in my configuration.
Roger
Roger2.zip