Re: [rt.cpan.org #172270] Impossible to install PAR::Packer on Redhat LINUX
"Roderich Schupp via RT" <[email protected]> Mon, 15 Dec 2025 08:40:16 -0500
| Newsgroups | gmane.comp.lang.perl.par |
|---|---|
| Message-ID | <[email protected]> |
Mon Dec 15 08:40:15 2025: Request 172270 was acted upon. Transaction: Correspondence added by [email protected] Queue: PAR-Packer Subject: Re: [rt.cpan.org #172270] Impossible to install PAR::Packer o= n Redhat LINUX Broken in: (no value) Severity: (no value) Owner: Nobody Requestors: [email protected] Status: new Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=3D172270 > Hi, just FYI, the official bug tracker for PAR::Packer (as stated in META.{yaml,json}) is https://github.com/rschupp/PAR-Packer Now to your problem: On Mon, Dec 15, 2025 at 1:31=E2=80=AFPM Christian CG. Guillemain (Nokia) vi= a RT < [email protected]> wrote: > > I'm trying to install PAR::Packer but it failed in all ways: > > With cpanm: > > cpanm PAR::Packer > --> Working on PAR::Packer > Fetching > http://www.cpan.org/authors/id/R/RS/RSCHUPP/PAR-Packer-1.064.tar.gz ... OK > Configuring PAR-Packer-1.064 ... OK > Building and testing PAR-Packer-1.064 ... FAIL > ! Installing PAR::Packer failed. See > /root/.cpanm/work/1765798713.72794/build.log for details. Retry with > --force to force install it. > [root@nfmp23-11-ext PAR-Packer-1.064]# cpanm PAR::Packer --force > --> Working on PAR::Packer > Fetching > http://www.cpan.org/authors/id/R/RS/RSCHUPP/PAR-Packer-1.064.tar.gz ... OK > Configuring PAR-Packer-1.064 ... OK > Building and testing PAR-Packer-1.064 ... FAIL > ! Installing PAR::Packer failed. See > /root/.cpanm/work/1765798752.72956/build.log for details. Retry with > --force to force install it. > Note: This log file would have shown what happened. Next time either include it or run cpanm with "-v". > ... # using method ldd to find files to embed > # embedding "./par" as "par" > # embedding "/lib64/libperl.so.5.26" as "libperl.so.5.26" > gcc -c -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall > -Werror=3Dformat-security -Wp,-D_FORTIFY_SOURCE=3D2 -Wp,-D_GLIBCXX_ASSERT= IONS > -fexceptions -fstack-protector-strong -grecord-gcc-switches > -specs=3D/usr/lib/rpm/redhat/redhat-hardened-cc1 > -specs=3D/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=3Dgeneric > -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection > -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=3D64 -I/usr/lib64/perl5/CORE > -DLDLIBPTHNAME=3DLD_LIBRARY_PATH -DPARL_EXE=3Dparl -DPAR_PACKER_VERSION= =3D1.064 > -g boot.c > gcc boot.o sha1.o -s -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now > -specs=3D/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-z,relro -Wl,-z,now > -specs=3D/usr/lib/rpm/redhat/redhat-hardened-ld -fstack-protector-strong > -L/usr/local/lib -L/usr/lib64/perl5/CORE -lpthread -lresolv -ldl -lm > -lcrypt -lutil -lc -o ./boot > true > "/usr/bin/perl" encode_append.pl Static.in ./boot Static.pm > cp Static.pm ../blib/lib/PAR/StrippedPARL/Static.pm > cp Dynamic.pm ../blib/lib/PAR/StrippedPARL/Dynamic.pm > "/usr/bin/perl" -Mblib=3D.. run_with_inc.pl ./boot -q -B -Oparl > /tmp/c6ZW0tu_Bb/par-726f6f74/temp-73282/boot: exec of > /tmp/c6ZW0tu_Bb/par-726f6f74/temp-73282/boot (custom Perl interpreter) > failed (errno=3D13) > system(./boot -I../blib/arch -I../blib/lib -I/usr/local/lib64/perl5 > -I/usr/local/share/perl5 -I/usr/lib64/perl5/vendor_perl > -I/usr/share/perl5/vendor_perl -I/usr/lib64/perl5 -I/usr/share/perl5 -I. = -q > -B -Oparl) failed: $?=3D65280 The build process generates an executable below /tmp, then tries to execute it and fails with EACCESS (errno 13). Most likely your /tmp is a filesystem mounted with option "noexec". Set the TMPDIR environment variable to a directory (e.g. below your home directory) that's *not* mounted with "noexec", i.e. $ export TMPDIR=3D/some/dir/without/noexec $ cpanm -v PAR::Packer Note that "generates an executable and then executes it" is normal for PAR::Packer's operation: it does it when "packing" a script (with pp) and also when running the generated executable. So you have to use a similar setting in both cases (you may use PAR_TMPDIR instead of the more general TMPDIR). Cheers, Roderich