From: roger AT isp DOT uni-kassel DOT de (=?iso-8859-1?Q?Roger_Ren=E9_Kommer?=) Subject: Re: Troubles with DLL's 20 Feb 1998 20:26:36 -0800 Message-ID: <01bd3e56$57bc26e0$60040d8d.cygnus.gnu-win32@ROGKOMUN> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_002C_01BD3E5E.B9808EE0" To: This is a multi-part message in MIME format. ------=_NextPart_000_002C_01BD3E5E.B9808EE0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi, root AT jacob DOT remcomp DOT fr wrote: > Nobody answered that message. Nobody answered that message here in the mailing list, but two tried to help me with via mail. OK, Mikey was right to point me, that I should read the web page, where I got the Makefile.Dlls more carefully. Actually, I cannot find the url. Can somebody post it? Unfortunatelly the intermediate files like dll1_globals.h dll1_dll.h dll2.def are always deleted after make the 'all' target finished in my samples, so I'd never seen these files. In the Makefile, which includes Makefiles.Dlls I had to insert a line like this: ..SECONDARY: dll1_globals.h dll1_dll.h dll2_globals.h dll2_dll.h He also pointed out, that I have to access the data, via label, how it is defined in the DLL not directly (although it appear as exported symbol), but through a pointer imp_label, which has been created by a bunch of binary and shellscript tools or special Makefile templates. After playing 4 hours with it - still not working - I found, that the set of image base addresses I used on my machine does not work. With another set of image base addresses exporting data works. Beside these troubles, there is still a problem with creating relocatable dlls. Dlls with fix image base makes no sense to me: This would be like writing very old fashioned TSR's for DOS, maybe on another level, but with the same problems. I've created 3 test package for the static/global data problem. The first uses Makefile.Dlls (which is a little modified version of the Makefile.Dlls which can be found on a web side) send me by Mikey. The second use a shell script 'umakedll', which comes from Kees van Veen. Third test package is based on cygshared, a script where I put all some additionally features. Type cygshared without arguments for a short description. If you compile the files, testdll1.exe should work ok, including accessing global dll data from the exe. dlltest2, which links 2 dll's with the same image base address, NT claims, that application cannot be initialized properly. Sometimes (I haven't figured out, in which cases), the program starts, but if it tries to access static/global data inside the dll2foo() the program terminates with SIGSEGV. Loaded in gdb, you can see, that the address of the static/global data is either out of range of the image address or only with some bytes offset. dlltest3, including in test package 'mikey' and 'roger' (there is no support for it in 'kees') is based on the same code, but use another image base address for dll2. This test should also work fine: There is a problem with relocating dll's! dlltest4 (and following) is only included in the package 'roger', because this doesn't work with 'mikey' and 'kees'. In this test I link dlltest4 to dll3 and dll2a. dll3 is also linked to dll2a. I have to modify the generation of dll_entry AT 12 to ${libname}_dll_entry AT 12, otherwise linking dll3 to libdll3_dll.a doesn't know which exported function 'dll_entry AT 12' it should use to link. Actually, I don't think, that it make much sense, that the function dll_entry AT 12 makes much sense insite the libdll_dll.a. This test should also work, because dll3 and dll2a uses different image base addresses. dlltest5-dlltest7 are modification of previous test, look in the Makefile. I use latest (I think) coolview and the linker from an archive 'B18-patched-ld'. I use NT4 Server, SP3, PP200 64MB as plattform. I haven't tested it with Windows 95. Another issue: I try to compile a little more complex dll. If it starts linking (linking as whole, including dlltool, ld and other), it is a hard stress test for my HD. Although my Atlas II is really not slow, I can do now much more, than just drinking a coffee while waiting for finishing. The solution (even if it works, with a set of image bases) is not very handy. I'm also not very happy with using global #defines to access dll_global_symbol via _imp__dll_global_symbol, because this label can also be used in the exe-sources in another scope, as local variable, struct/class member element,etc. Roger ------=_NextPart_000_002C_01BD3E5E.B9808EE0 Content-Type: application/x-zip-compressed; name="Mikey.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Mikey.zip" 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 ------=_NextPart_000_002C_01BD3E5E.B9808EE0 Content-Type: application/x-zip-compressed; name="Kees.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Kees.zip" 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 ------=_NextPart_000_002C_01BD3E5E.B9808EE0 Content-Type: application/x-zip-compressed; name="Roger.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Roger.zip" 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 AAAAAAwADACRAgAABhcAAAAA ------=_NextPart_000_002C_01BD3E5E.B9808EE0-- - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".