[MacPorts] #68295: mod_perl2 @2.0.12_0+perl5.34: expecting ExtUtils::Embed 1.35 (was: mod_perl2-2.0.12_0+perl5.34.darwin_23.arm64 configure fails)
MacPorts
noreply at macports.org
Sat Sep 30 01:08:51 UTC 2023
#68295: mod_perl2 @2.0.12_0+perl5.34: expecting ExtUtils::Embed 1.35
------------------------+--------------------
Reporter: murrayE | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.8.1
Resolution: | Keywords:
Port: mod_perl2 |
------------------------+--------------------
Changes (by ryandesign):
* keywords: configure failure =>
Old description:
> From main.log:
> {{{{
> :notice:configure ---> Configuring mod_perl2
> :debug:configure Preferred compilers: clang macports-clang-15 macports-
> clang-14 macports-clang-11
> :debug:configure Using compiler 'Xcode Clang'
> :debug:configure Executing org.macports.configure (mod_perl2)
> :debug:configure system -W
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_www_mod_perl2/mod_perl2/work/mod_perl-2.0.12:
> /opt/local/bin/perl5.34 Makefile.PL MP_APXS=/opt/local/bin/apxs
> :info:configure I have found ExtUtils::Embed 1.2505 at
> :info:configure /opt/local/lib/perl5/vendor_perl/5.34/ExtUtils/Embed.pm
> :info:configure This is probably not the right one for this perl version.
> Please make sure
> :info:configure there is only one version of this module installed and
> that it is the one
> :info:configure that comes with this perl version.
> :info:configure If you insist on using the ExtUtils::Embed as is set the
> environment
> :info:configure variable MP_USE_MY_EXTUTILS_EMBED=1 and try again.
> :info:configure Details: expecting ExtUtils::Embed 1.35 (according to
> Module::CoreList)
> :info:configure BEGIN failed--compilation aborted at lib/Apache2/Build.pm
> line 65.
> :info:configure Compilation failed in require at Makefile.PL line 38.
> }}}}
New description:
From main.log:
{{{
:notice:configure ---> Configuring mod_perl2
:debug:configure Preferred compilers: clang macports-clang-15 macports-
clang-14 macports-clang-11
:debug:configure Using compiler 'Xcode Clang'
:debug:configure Executing org.macports.configure (mod_perl2)
:debug:configure system -W
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_www_mod_perl2/mod_perl2/work/mod_perl-2.0.12:
/opt/local/bin/perl5.34 Makefile.PL MP_APXS=/opt/local/bin/apxs
:info:configure I have found ExtUtils::Embed 1.2505 at
:info:configure /opt/local/lib/perl5/vendor_perl/5.34/ExtUtils/Embed.pm
:info:configure This is probably not the right one for this perl version.
Please make sure
:info:configure there is only one version of this module installed and
that it is the one
:info:configure that comes with this perl version.
:info:configure If you insist on using the ExtUtils::Embed as is set the
environment
:info:configure variable MP_USE_MY_EXTUTILS_EMBED=1 and try again.
:info:configure Details: expecting ExtUtils::Embed 1.35 (according to
Module::CoreList)
:info:configure BEGIN failed--compilation aborted at lib/Apache2/Build.pm
line 65.
:info:configure Compilation failed in require at Makefile.PL line 38.
}}}
--
Comment:
Replying to [ticket:68295 murrayE]:
> From main.log:
> {{{
> :info:configure I have found ExtUtils::Embed 1.2505 at
> :info:configure
/opt/local/lib/perl5/vendor_perl/5.34/ExtUtils/Embed.pm
> :info:configure This is probably not the right one for this perl
version. Please make sure
> :info:configure there is only one version of this module installed and
that it is the one
> :info:configure that comes with this perl version.
> :info:configure If you insist on using the ExtUtils::Embed as is set the
environment
> :info:configure variable MP_USE_MY_EXTUTILS_EMBED=1 and try again.
> :info:configure Details: expecting ExtUtils::Embed 1.35 (according to
Module::CoreList)
> :info:configure BEGIN failed--compilation aborted at
lib/Apache2/Build.pm line 65.
> :info:configure Compilation failed in require at Makefile.PL line 38.
> }}}
The file /opt/local/lib/perl5/vendor_perl/5.34/ExtUtils/Embed.pm comes
from the port p5.34-extutils-embed. This port is not listed as a
dependency of mod_perl2. Maybe mod_perl2 conflicts with it. Try
deactivating that port first. Clean mod_perl2 before trying again.
p5.34-extutils-embed seems to be confused about its version number. The
port version is 1.140.0 but the code in the file that calculates its
version is written as:
{{{
$VERSION = sprintf("%d.%02d", q$Revision: 1.2505 $ =~ /(\d+)\.(\d+)/);
}}}
hence it is reporting its version as 1.2505.
The ExtUtils::Embed module appears to be part of the perl core. The
perl5.34 port provides a newer version of this module at
/opt/local/lib/perl5/5.34/ExtUtils/Embed.pm which I assume will be used if
the separate older module is not installed. I wonder how long it has been
part of the perl core and whether there is still any good reason for us to
have a separate port for it. We do still have some very old perl versions
available in MacPorts though (perl5.16 is the oldest); maybe it is still
useful for those.
--
Ticket URL: <https://trac.macports.org/ticket/68295#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list