On Tue, Jan 7, 2014 at 7:52 AM, bulk88 <bulk88@hotmail.com> wrote: > I'm wondering a little bit if Win32 Perl needs this. Win32's runtime > linker does the same basename matching unless you pass an absolute path > (Dynaloader passes absolute paths to Win32's runtime linker). A big problem > results, if a XS DLL has the same filename as non-XS DLL, and another DLL > tries to link to the filename, and linker finds the XS DLL instead, which > only exports the boot function, not dozens of non-Perl C functions. Here is > one with version::'s version.dll conflicting with MS's version.dll (MS > version.dll is a metadata library for PE files's "version resource") > https://rt.cpan.org/Ticket/Display.html?id=88458#txn-1308331 . I also > recently ran into this problem with building http://search.cpan.org/~ > pjacklam/Math-BigInt-GMP-1.37/lib/Math/BigInt/GMP.pm which generated a > GMP.dll, which linked to gmp.dll, and couldn't be loaded into any process > due to missing functions (GMP.dll the XS lib's imported functions were > attempted to be resolved with GMP.dll the XS lib's exported function table > by the Win32 runtime linker, instead of searching for another gmp.dll using > the default collection of folders). I had to rename the C function > exporting gmp.dll to something else and recompile to make it work. > Yeah. that sounds like a good idea. LeonThread Previous | Thread Next