Skip Menu |

This queue is for tickets about the Sys-Syslog CPAN distribution.

Report information
The Basics
Id: 104710
Status: resolved
Priority: 0/
Queue: Sys-Syslog

People
Owner: SAPER [...] cpan.org
Requestors: CHORNY [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.33
Fixed in: 0.34



Subject: loadable library and perl binaries are mismatched
Syslog.c: loadable library and perl binaries are mismatched (got handshake key 0AD00080, needed 0AF00080) When building 5.22.0RC2 on Windows. Error appears both in building bundled modules for Strawberry (another perl is installed) and in VM where 5.22.0RC2 is the only perl installed. See this cpantesters report http://www.cpantesters.org/cpan/report/841fd228-6bf3-1014-9714-7606782650c6 You can check this with portable version of Strawberry (Sys::Syslog is installed with tests skipped) http://strawberryperl.com/beta.html -- Alexandr Ciornii, http://chorny.net
On Tue May 26 11:51:35 2015, CHORNY wrote: Show quoted text
> Syslog.c: loadable library and perl binaries are mismatched (got > handshake key 0AD00080, needed 0AF00080) > > When building 5.22.0RC2 on Windows. Error appears both in building > bundled modules for Strawberry (another perl is installed) and in VM > where 5.22.0RC2 is the only perl installed. > > See this cpantesters report > http://www.cpantesters.org/cpan/report/841fd228-6bf3-1014-9714- > 7606782650c6 > > You can check this with portable version of Strawberry (Sys::Syslog is > installed with tests skipped) http://strawberryperl.com/beta.html
https://github.com/maddingue/Sys-Syslog/blob/master/Makefile.PL#L58 The code overwrites DEFINE instead of appending to it. The -D flags from %Config are lost then.
In strawberry perl 5.22 I use the following patch:
diff -ru Sys-Syslog-0.33/Makefile.PL Sys-Syslog-0.33_patched/Makefile.PL
--- Sys-Syslog-0.33/Makefile.PL 2012-08-17 22:06:50.000000000 +0200
+++ Sys-Syslog-0.33_patched/Makefile.PL 2015-05-31 17:07:43.000000000 +0200
@@ -3,7 +3,7 @@
 use ExtUtils::MakeMaker;
 use File::Copy;
 use File::Spec;
+use Config;


 # create a typemap for Perl 5.6
 if ($] < 5.008) {
@@ -33,7 +33,7 @@
     $virtual_path{'win32/Win32.pm'   } = '$(INST_LIBDIR)/Syslog/Win32.pm';
     $virtual_path{'win32/PerlLog.dll'} = '$(INST_ARCHAUTODIR)/PerlLog.dll';

-    push @extra_params, CCFLAGS => "-Ifallback";
+    push @extra_params, CCFLAGS => "$Config{ccflags} -Ifallback";

     # recreate the DLL from its uuencoded form if it's not here
     if (! -f File::Spec->catfile("win32", "$name.dll")) {
Thanks for your bug report, and apologies for having been slow to apply the patch. This will be fixed in the next release.
This issue should be fixed with version 0.34, just released. -- Close the world, txEn eht nepO.