Bug 245163 - lang/perl5.30 : Fails to build on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit:Perl lib version (5.30.2) doesn't match executable ... version (5.30.1)
Summary: lang/perl5.30 : Fails to build on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit:Perl...
Status: Closed Unable to Reproduce
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: powerpc Any
: --- Affects Only Me
Assignee: Mathieu Arnold
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-03-29 14:06 UTC by canardo
Modified: 2020-04-05 20:19 UTC (History)
4 users (show)

See Also:
bugzilla: maintainer-feedback? (mat)


Attachments
log (515.21 KB, text/plain)
2020-04-05 00:53 UTC, Piotr Kubaj
no flags Details
perl5.30.build.log.failed--PR245163 (202.81 KB, text/plain)
2020-04-05 13:47 UTC, canardo
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description canardo 2020-03-29 14:06:31 UTC
Problem found when building lang/perl5.30 on FreeBSD 12.1-RELEASE-p1 r354992 GENERIC powerpc 32 bit, running on Apple Powerbook 17".
Problem is present when using portupgrade, and also with 'make install clean'



# cd /usr/ports/lang/perl5.30/
/usr/ports/lang/perl5.30 # make install clean
===>  Building for perl5-5.30.2
.....
.....
LD_LIBRARY_PATH=/usr/ports/lang/perl5.30/work/perl-5.30.2  ./perl -Ilib -I. -f pod/buildtoc -q
pod/buildtoc: Perl lib version (5.30.2) doesn't match executable '/usr/ports/lang/perl5.30/work/perl-5.30.2/perl' version (5.30.1) at lib/Config.pm line 62.
Compilation failed in require at lib/locale.pm line 4.
BEGIN failed--compilation aborted at lib/locale.pm line 4.
Compilation failed in require at pod/buildtoc line 10.
BEGIN failed--compilation aborted at pod/buildtoc line 10.
*** [pod/perltoc.pod] Error code 255

make[2]: stopped in /usr/ports/lang/perl5.30/work/perl-5.30.2
1 error

make[2]: stopped in /usr/ports/lang/perl5.30/work/perl-5.30.2
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/lang/perl5.30
*** Error code 1
Comment 1 Joel Rodriguez 2020-04-02 01:18:50 UTC
I also see this on an older FreeBSD 11 with an up to date ports. The previous version built AOK.

pkg version -v | egrep perl
ap24-mod_perl2-2.0.11,3            =   up-to-date with index
p5-Log-Log4perl-1.49               =   up-to-date with index
perl5-5.30.1                       <   needs updating (index has 5.30.2)

gcc9  -shared  -L/usr/ports/lang/perl5.30/work/perl-5.30.2 -L/usr/local/lib/perl5/5.30/mach/CORE\
 -lperl -L/usr/local/lib -fstack-protector-strong  re_exec.o re_comp.o re.o  -o ../../lib/auto/r\
e/re.so
chmod 755 ../../lib/auto/re/re.so
--- dynamic ---
--- linkext ---
--- pure_all ---
--- manifypods ---
--- all ---
--- pod/perltoc.pod ---
LD_LIBRARY_PATH=/usr/ports/lang/perl5.30/work/perl-5.30.2  ./perl -Ilib -I. -f pod/buildtoc -q
pod/buildtoc: Perl lib version (5.30.2) doesn't match executable '/usr/ports/lang/perl5.30/work/\
perl-5.30.2/perl' version (5.30.1) at lib/Config.pm line 62.
Compilation failed in require at lib/locale.pm line 4.
BEGIN failed--compilation aborted at lib/locale.pm line 4.
Compilation failed in require at pod/buildtoc line 10.
BEGIN failed--compilation aborted at pod/buildtoc line 10.
*** [pod/perltoc.pod] Error code 255

make[2]: stopped in /usr/ports/lang/perl5.30/work/perl-5.30.2
1 error

make[2]: stopped in /usr/ports/lang/perl5.30/work/perl-5.30.2
===> Compilation failed unexpectedly.
Comment 2 Piotr Kubaj freebsd_committer 2020-04-05 00:53:53 UTC
Created attachment 213079 [details]
log

Builds for me.
Comment 3 canardo 2020-04-05 13:46:46 UTC
On my machine
# pkg version -v | egrep perl
perl5-5.30.1                       <   needs updating (index has 5.30.2)

So I don't have 
ap24-mod_perl2-2.0.11,3
p5-Log-Log4perl-1.49

Should I install these ?


Please find attached the full log on my machine.
I tried to compare it with your log, not easy as you're using poudriere while I'm on powerpc hardware.
Your log also has an higher verbosity than mine.
We both use GCC 4.2.

If you have any ideas or tweaks I could perform on my machine, like increasing log verbosity, they are welcome.
Comment 4 canardo 2020-04-05 13:47:29 UTC
Created attachment 213093 [details]
perl5.30.build.log.failed--PR245163
Comment 5 Piotr Kubaj freebsd_committer 2020-04-05 13:58:42 UTC
(In reply to canardo from comment #4)
pod/buildtoc: Perl lib version (5.30.2) doesn't match executable '/usr/ports/lang/perl5.30/work/perl-5.30.2/perl' version (5.30.1) at lib/Config.pm line 62.

It seems that for some reason the already installed perl conflicts with new. Make a package of the old one just in case, remove it, and try to install the new perl.

Basically:
# pkg create perl5.30
# pkg delete -fy perl5.30
# make -C /usr/ports/lang/perl5.30 clean
# make -C /usr/ports/lang/perl5.30 install clean
Comment 6 Joel Rodriguez 2020-04-05 14:26:36 UTC
(In reply to canardo from comment #3)

Only if you need them, they should not be required to build the perl base port.
Comment 7 canardo 2020-04-05 18:23:49 UTC
(In reply to Piotr Kubaj from comment #5)

It works ! build successful.
Strange point is I also had this problem when using portupgrade, which is supposed to handle upgrade...

Anyway, thanks a lot. I guess this ticket can be closed.
Comment 8 Mark Millard 2020-04-05 20:13:22 UTC
(In reply to canardo from comment #7)

Isn't the need to do something equivalent to
explicitly involving

# pkg delete -fy perl5.30

before using make the actual bug that was
implicitly being reported? (Additional detail
now known.)

Is there at least a note to find indicating
that such an unusual step can be required? I
did not notice such in UPDATING. Perl, being
high use, probably deserves such a note in
UPDATING.

(I do not see this because of normally using
devel/poudriere-devel for building ports. So
I'd be surprised if, for some reason, I built
outside poudriere and ran into a port that
interfered with its own upgrade --unless
something warned me about the issue.)
Comment 9 Joel Rodriguez 2020-04-05 20:19:21 UTC
(In reply to Piotr Kubaj from comment #5)

Yeah I also find this a hard pill to swallow in a production environment. Say this doesn't work, you have just destroyed all service that use perl. An unacceptable risk.

In addition, would running "make deinstall" suffice?

I agree that this is still a bug, one I ran into several years back that eventually disappeared in a subsequent distribution.