[MacPorts] #59893: p5-wx: Compilation failed in require at Makefile.PL line 21.
MacPorts
noreply at macports.org
Fri Jun 19 23:21:57 UTC 2020
#59893: p5-wx: Compilation failed in require at Makefile.PL line 21.
-------------------------+----------------------
Reporter: ryandesign | Owner: mojca
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.6.2
Resolution: | Keywords:
Port: p5-wx |
-------------------------+----------------------
Comment (by ryandesign):
Replying to [comment:3 kencu]:
> If I manually go into the Wx build directory [...] and then run the
configure script as it appears to be currently run, it will generate the
noted error:
> {{{
> $ CC=/opt/local/bin/clang-mp-9.0 CXX=/opt/local/bin/clang++-mp-9.0
/opt/local/bin/perl5.28 Makefile.PL installdirs=vendor
> Searching configuration for:
> wxWidgets (any version) for (any toolkit); compiler compatibility: nc
(any version);
>
> Available configurations:
> wxWidgets 3.000004 for mac; compiler compatibility: gcc 3.4; options: no
debug, unicode, no mslu
> Compilation failed in require at Makefile.PL line 21.
> BEGIN failed--compilation aborted at Makefile.PL line 21.
> }}}
>
> However, if I run the configure script like this, the configuration will
complete without any trouble:
> {{{
> /opt/local/bin/perl5.28 Makefile.PL installdirs=vendor
> }}}
Ok. Sounds like it's not #59786 then but rather that this configuration
script is somehow incompatible with clang 9. Would be good if there were
some way to see what error is being generated.
> but later on the build will fail, because on {{{10.6.8}}} you run into
flags being passed to the default compiler that is used, gcc-4.2, that it
doesn't understand:
Replying to [comment:4 kencu]:
> Where is the g++-4.2 coming from?
My assumption is that when you ran the configuration process above without
specifying CC and CXX it defaulted to using g++-4.2.
> but the relevant PERL file that is supposed to have been used generating
this Makefile looks like it has the right compiler in it:
> {{{
> /opt/local/lib/perl5/5.28/darwin-thread-multi-2level/Config.pm
> }}}
> {{{
> # tie returns the object, so the value returned to require will be true.
> tie %Config, 'Config', {
> archlibexp => '/opt/local/lib/perl5/5.28/darwin-thread-multi-
2level',
> archname => 'darwin-thread-multi-2level',
> cc => '/opt/local/bin/clang-mp-9.0',
> }}}
I'm not totally familiar with how perl stuff builds but we've certainly
run into situations before where it builds using the compiler perl was
built with. It seems reasonable to think that the above would make it
build with clang 9. But evidently not.
You could grep for /usr/bin/g++-4.2 in the p5-wx work directory (after
you've run the configuration) and/or in the files installed by your perl
ports and modules and see if you see anything relevant.
--
Ticket URL: <https://trac.macports.org/ticket/59893#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list