Skip Menu |

This queue is for tickets about the Image-PNGwriter CPAN distribution.

Report information
The Basics
Id: 72922
Status: new
Priority: 0/
Queue: Image-PNGwriter

People
Owner: Nobody in particular
Requestors: user42 [...] zip.com.au
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: CCFLAGS and "not a CODE
Date: Sun, 04 Dec 2011 07:12:34 +1100
To: bug-Image-PNGwriter [...] rt.cpan.org
From: Kevin Ryde <user42 [...] zip.com.au>
With recent debian i386 perl 5.14.2 "make test" gets an error # Failed test 'use Image::PNGwriter;' # at t/Image-PNGwriter.t line 9. # Tried to use 'Image::PNGwriter'. # Error: Not a CODE reference at /usr/lib/perl/5.14/DynaLoader.pm line 207. # END failed--call queue aborted at /tmp/Image-PNGwriter-0.01/blib/lib/Image/PNGwriter.pm line 207. # Compilation failed in require at (eval 4) line 2. # BEGIN failed--compilation aborted at (eval 4) line 2. # Looks like you failed 1 test of 2. t/Image-PNGwriter.t .. Dubious, test returned 1 (wstat 256, 0x100) Failed 1/2 subtests I believe the way Makefile.PL overrides CCFLAGS loses flags which are necessary for binary compatibility on perl structs etc. It's probably -D_FILE_OFFSET_BITS=64 needed, but I didn't try to see what affects it. PNGwriter.o built with or without the CCFLAGS override come out different in certain offsets, in particular PL_unitcheckav hits somewhere wrong and the call_list() of that array generated by the xsubpp goes bad resulting in "Not a CODE reference". INC is a good place to add flags like $freetype_cflags (which is after all just a -I include), per first diff below. Otherwise the ExtUtils::MakeMaker docs advise that $Config{ccflags} should be kept in CCFLAGS for this binary compatibility, per second diff below.

Message body is not shown because sender requested not to inline it.

Message body is not shown because sender requested not to inline it.