Skip Menu |

This queue is for tickets about the PAR CPAN distribution.

Report information
The Basics
Id: 9662
Status: resolved
Priority: 0/
Queue: PAR

People
Owner: smueller [...] cpan.org
Requestors: everets_kevin [...] emc.com
Cc:
AdminCc:

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



Subject: PAR unable to build on cygwin
Using cygwin to build PAR, with "perl, v5.8.6 built for cygwin-thread-multi-64int", there is a failure when running "make", as follows: ~/src/PAR-0.86$ perl Makefile.PL *** ExtUtils::AutoInstall version 0.61 *** Checking for dependencies... [Core Features] - File::Temp ...loaded. (0.14 >= 0.05) - Compress::Zlib ...loaded. (1.33 >= 1.3) - Archive::Zip ...loaded. (1.14 >= 1) - Module::ScanDeps ...loaded. (0.51 >= 0.45) - PAR::Dist ...loaded. (0.07 >= 0.06) *** ExtUtils::AutoInstall configuration finished. Checking if your kit is complete... Looks good Writing Makefile for the par.exe program Writing Makefile for PAR ~/src/PAR-0.86$ make cp lib/PAR/Packer.pm blib/lib/PAR/Packer.pm cp lib/PAR/Filter/PodStrip.pm blib/lib/PAR/Filter/PodStrip.pm cp lib/PAR/Filter/Obfuscate.pm blib/lib/PAR/Filter/Obfuscate.pm cp lib/App/Packer/PAR.pm blib/lib/App/Packer/PAR.pm cp lib/PAR/Filter.pm blib/lib/PAR/Filter.pm cp lib/PAR.pm blib/lib/PAR.pm cp lib/PAR/Filter/PatchContent.pm blib/lib/PAR/Filter/PatchContent.pm cp lib/PAR/Filter/Bytecode.pm blib/lib/PAR/Filter/Bytecode.pm cp lib/PAR/Tutorial.pod blib/lib/PAR/Tutorial.pod cp lib/PAR/FAQ.pod blib/lib/PAR/FAQ.pod cp lib/PAR/Heavy.pm blib/lib/PAR/Heavy.pm cp lib/PAR/Filter/Bleach.pm blib/lib/PAR/Filter/Bleach.pm make[1]: Entering directory `/cygdrive/u/keverets/src/PAR-0.86/myldr' perl ./file2c.pl /usr/lib/perl5/5.8/cygwin/CORE/libperl.dll.a my_perl.c load_me_0 1 30000 gcc -c -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe -I/usr/local/include -I/usr/lib/perl5/5.8/cygwin/CORE main.c perl ./file2c.pl ../script/par.pl my_par_pl.c load_me_2 1 gcc -c -DPERL_USE_SAFE_PUTENV -fno-strict-aliasing -pipe -I/usr/local/include -I/usr/lib/perl5/5.8/cygwin/CORE my_par_pl.c ld2 main.o my_par_pl.o win32.coff -s -s -s -L/usr/local/lib /usr/lib/perl5/5.8/cygwin/auto/DynaLoader/DynaLoader.a /usr/lib/perl5/5.8/cygwin/auto/Win32CORE/Win32CORE.a -L/usr/lib/perl5/5.8/cygwin/CORE -lperl -lcrypt -lgdbm_compat -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll --output ./par.exe gcc main.o my_par_pl.o win32.coff -s -s -s -L/usr/local/lib /usr/lib/perl5/5.8/cygwin/auto/DynaLoader/DynaLoader.a /usr/lib/perl5/5.8/cygwin/auto/Win32CORE/Win32CORE.a -L/usr/lib/perl5/5.8/cygwin/CORE -lperl -lcrypt -lgdbm_compat -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll --output ./par.exe main.o(.text+0x67):main.c: undefined reference to `_boot_' Info: resolving _MallocCfg_ptr by linking to __imp__MallocCfg_ptr (auto-import) collect2: ld returned 1 exit status perlld: *** system() failed to execute gcc main.o my_par_pl.o win32.coff -s -s -s -L/usr/local/lib /usr/lib/perl5/5.8/cygwin/auto/DynaLoader/DynaLoader.a /usr/lib/perl5/5.8/cygwin/auto/Win32CORE/Win32CORE.a -L/usr/lib/perl5/5.8/cygwin/CORE -lperl -lcrypt -lgdbm_compat -L/lib/w32api -lnetapi32 -lwininet -lversion -lmpr -lodbc32 -lodbccp32 -lwinmm -lstdc++ -lole32 -loleaut32 -luuid -lcomctl32 -lgdi32 -lcomdlg32 -lntdll --output ./par.exe make[1]: *** [par.exe] Error 1 make[1]: Leaving directory `/cygdrive/u/keverets/src/PAR-0.86/myldr' make: *** [subdirs] Error 2 ~/src/PAR-0.86$
From: rurban
[guest - Wed Jan 12 16:20:20 2005]: Show quoted text
> main.o(.text+0x67):main.c: undefined reference to `_boot_'
The reason is $Config{static_ext} = ' Win32CORE'; in cygwin. Note the leading whitespace which leads inside ExtUtils::Embed strip /\s+/ to an empty array element which leads to a wrong perlxsi.x line. Fix ExtUtils/Embed.pm: --- /lib/perl5/5.8/ExtUtils/Embed.pm.orig 2005-08-22 22:27:13.001000000 +0100 +++ /lib/perl5/5.8/ExtUtils/Embed.pm 2005-12-27 14:06:08.396250000 +0100 @@ -133,7 +133,9 @@ sub static_ext { unless (scalar @Extensions) { - @Extensions = sort split /\s+/, $Config{static_ext}; + my $static_ext = $Config{static_ext}; + $static_ext =~ s/^\s+//; + @Extensions = sort split /\s+/, $static_ext; unshift @Extensions, qw(DynaLoader); } -- Reini Urban http://xarch.tu-graz.ac.at/home/rurban/
--- /lib/perl5/5.8/ExtUtils/Embed.pm.orig 2005-08-22 22:27:13.001000000 +0100 +++ /lib/perl5/5.8/ExtUtils/Embed.pm 2005-12-27 14:06:08.396250000 +0100 @@ -133,7 +133,9 @@ sub static_ext { unless (scalar @Extensions) { - @Extensions = sort split /\s+/, $Config{static_ext}; + my $static_ext = $Config{static_ext}; + $static_ext =~ s/^\s+//; + @Extensions = sort split /\s+/, $static_ext; unshift @Extensions, qw(DynaLoader); } @Extensions;