[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