[MacPorts] #52290: Perl5.22 - Build failure on 10.6
#52290: Perl5.22 - Build failure on 10.6 -----------------------------+-------------------------------- Reporter: ridethecliche@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: perl5.22 | Port: perl5 -----------------------------+-------------------------------- Hello, When building Perl 5.22 on my ancient 2006 Mac Mini I get a compilation error: {{{ :info:build \ :info:build :info:build ld: warning: in re_exec.o, missing required architecture x86_64 in file :info:build ld: warning: in re_comp.o, missing required architecture x86_64 in file :info:build ld: warning: in re.o, missing required architecture x86_64 in file :info:build chmod 755 ../../lib/auto/re/re.bundle :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_perl5/perl5.22/work/perl-5.22.2/ext/re/../../miniperl "-I../../lib" "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -- re.bs ../../lib/auto/re/re.bs 644 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_perl5/perl5.22/work/perl-5.22.2/ext/re' :info:build DYLD_LIBRARY_PATH=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_perl5/perl5.22/work/perl\-5.22.2 ./perl -Ilib -f pod/buildtoc -q :info:build Can't load 'lib/auto/re/re.bundle' for module re: dlopen(lib/auto/re/re.bundle, 1): no suitable image found. Did find: :info:build lib/auto/re/re.bundle: mach-o, but wrong architecture at lib/XSLoader.pm line 73. :info:build :info:build Compilation failed in require at lib/Text/Wrap.pm line 58. :info:build BEGIN failed--compilation aborted at lib/Text/Wrap.pm line 58. :info:build Compilation failed in require at pod/buildtoc line 7. :info:build BEGIN failed--compilation aborted at pod/buildtoc line 7. :info:build make: *** [pod/perltoc.pod] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_perl5/perl5.22/work/perl-5.22.2' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_perl5/perl5.22/work/perl-5.22.2" && /usr/bin/make -j2 -w all :info:build Exit code: 2 :error:build org.macports.build for port perl5.22 returned: command execution failed :debug:build Error code: CHILDSTATUS 19017 2 :debug:build Backtrace: command execution failed }}} Any guidance on how to get around this? Thanks. ~RTC -- Ticket URL: <https://trac.macports.org/ticket/52290> MacPorts <https://www.macports.org/> Ports system for macOS
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Changes (by ryandesign@…): * cc: ryandesign@… (added) * keywords: perl5.22 => * port: perl5 => perl5.22 * owner: macports-tickets@… => mojca@… Comment: Ok, I see the deployment target is 10.5. I assume that means you're running Leopard. I see that it's trying to build perl5.22 for both i386 and ppc architectures. I assume that's because you've requested the +universal variant. The reason for the failure is that the build system failed to supply the `-arch` flags to a few compiler invocations. We need to fix that. I'm surprised we haven't encountered this problem before; that kind of problem would seem to affect all Mac operating system versions when building universal, and I build universal by default on my system, so I should have seen it. I am curious why in the absence of `-arch` flags the compiler seems to have defaulted to build for x86_64. It was my understanding that the compiler defaulted to i386 or ppc on Leopard and earlier. Does your Mac mini have an Intel or PowerPC processor? -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:1> MacPorts <https://www.macports.org/> Ports system for macOS
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by ridethecliche@…): Hello, That's correct, I requested the +universal variant. The Mac Mini is running MacOS 10.6 and has an Intel processor. My intent was to compile the package on an Intel Mac running 10.6 and be able to use the binary on a PPC Mac running 10.5. Sorry I forgot to mention setting the deployment target in my initial bug report. Just now I did a clean install of MacPorts, and did a "sudo port -v -s install perl5 +universal" and got a clean run (Producing a i386 and x86_64 binary). However if I set build_arch to i386 in macports.conf and do "sudo port -v -s install perl5" the build fails in the same manner as my first report. Hope this helps, ~RTC -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:3> MacPorts <https://www.macports.org/> Ports system for macOS
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by mojca@…): It would help to ask the upstream for help. Just in case, can you please try to change {{{ if {[variant_isset universal]} { }}} into {{{ if {true} { }}} and check whether that makes any difference? I don't think it does, but ... -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:5> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by ken.cunningham.webuse@…): On this lovely 17" macbookpro 2,1 that I have and refuse to trash, running 10.6 with libc++ upgrade, there seems to be no problem installing any recent version of perl, universal or otherwise. {{{ perl5.22 @5.22.2_1 platform='darwin 10' archs='x86_64' perl5.22 @5.22.2_1+universal (active) platform='darwin 10' archs='i386 x86_64' perl5.24 @5.24.0_0 platform='darwin 10' archs='x86_64' perl5.24 @5.24.0_0+universal (active) platform='darwin 10' archs='i386 x86_64' }}} I would not think it would be possible to build something on macports 10.6 and deploy it on 10.5. However, why bother with that hassle?? Perl builds and installs just fine on 10.5 PPC. {{{ perl5.22 @5.22.2_1 (active) platform='darwin 9' archs='ppc' perl5.24 @5.24.0_0 (active) platform='darwin 9' archs='ppc' }}} I would just suggest to the OP to build it on the 10.5 PPC machine, and be done with it. best, Ken -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:6> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by ken.cunningham.webuse@…): FYI, it builds and installs just fine on 10.4 PPC as well. {{{ perl5.22 @5.22.1_1 platform='darwin 8' archs='ppc' perl5.22 @5.22.2_0 platform='darwin 8' archs='ppc' perl5.22 @5.22.2_1 (active) platform='darwin 8' archs='ppc' perl5.24 @5.24.0_0 (active) platform='darwin 8' archs='ppc' }}} -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:7> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by ryandesign@…): Replying to [comment:6 ken.cunningham.webuse@…]:
I would not think it would be possible to build something on macports 10.6 and deploy it on 10.5.
MacPorts does include functionality that's supposed to make this possible, specifically changing the deployment target. However, this macports.conf setting is not advertised, because support for this setting varies greatly among ports. Looks like the perl ports may be among those that don't support it properly. Or it may relate to building for a non-default architecture, since the reporter mentioned that:
However if I set build_arch to i386 in macports.conf and do "sudo port -v -s install perl5" the build fails in the same manner as my first report.
I assume that means the deployment target was not changed to 10.5 for that test. -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:8> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Comment (by ryandesign@…): And in some cases, in addition to the deployment target, you may have to change the SDK. And again, support for doing that varies by port, so we don't advertise that macports.conf setting either. I agree with Ken that if you want to build for PowerPC and target 10.5, the most reliable and straightforward way to do so is to build on a PowerPC Mac running 10.5. -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:9> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5.22 @5.22.2: Build failure on 10.6 ------------------------------+--------------------- Reporter: ridethecliche@… | Owner: mojca@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: perl5.22 | ------------------------------+--------------------- Changes (by mojca@…): * cc: mcalhoun@… (added) * version: 2.3.4 => -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:10> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52290: perl5: cannot be built as ppc/i386 universal on x86_64 ------------------------------+------------------- Reporter: ridethecliche@… | Owner: mojca Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: perl5.22 | ------------------------------+------------------- -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:11> MacPorts <https://www.macports.org/> Ports system for OS X
#52290: perl5: cannot be built as ppc/i386 universal on x86_64 ------------------------------+------------------- Reporter: ridethecliche@… | Owner: mojca Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: perl5.22 | ------------------------------+------------------- Comment (by mojca): Potentially related patches are in #52739. -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:12> MacPorts <https://www.macports.org/> Ports system for OS X
#52290: perl5: cannot be built as ppc/i386 universal on x86_64 ------------------------------+------------------- Reporter: ridethecliche@… | Owner: mojca Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: perl5.22 | ------------------------------+------------------- Comment (by mojca): Are you willing to test whether the patches in the other ticket solve the problem for you? -- Ticket URL: <https://trac.macports.org/ticket/52290#comment:13> MacPorts <https://www.macports.org/> Ports system for macOS
participants (1)
-
MacPorts