Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#65902 closed defect (duplicate)

p5.34-io-compress-brotli fails to build

Reported by: lukaso (Lukas Oberhuber) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: Cc: mascguy (Christopher Nielsen)
Port: p5.34-io-compress-brotli

Description

Setting macos version to 10.12 causes p5.34-io-compress-brotli to fail to build:

:info:build ar -crs libbrotli.a bin/obj/c/common/dictionary.o bin/obj/c/common/transform.o bin/obj/c/dec/bit_reader.o bin/obj/c/dec/decode.o bin/obj/c/dec/huffman.o bin/obj/c/dec/state.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/cluster.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/histogram.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/memory.o bin/obj/c/enc/metablock.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/utf8_util.o
:info:build gmake[1]: Leaving directory '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001/brotli'
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001" && /usr/bin/make -j4 -w all
:info:build Exit code: 2
:error:build Failed to build p5.34-io-compress-brotli: command execution failed
:debug:build Error code: CHILDSTATUS 30102 2
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$callback {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec -callback portprogress::target_progress_callback build"
:debug:build     (procedure "portbuild::build_main" line 8)
:debug:build     invoked from within
:debug:build "$procedure $targetname"
:error:build See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/main.log for details.

This fixed it:

sudo port clean p5.34-io-compress-brotli
sudo port -v install p5.34-io-compress-brotli build.jobs=1

Attachments (2)

main_Rosetta.log (231.5 KB) - added by barracuda156 2 years ago.
Updated log
main.log (43.1 KB) - added by lukaso (Lukas Oberhuber) 2 years ago.
Full log of failure occurring.

Download all attachments as: .zip

Change History (15)

comment:1 Changed 2 years ago by mascguy (Christopher Nielsen)

Cc: mascguy added

Lukas, can you elaborate on your statement, "Setting macos version to 10.12?"

comment:2 Changed 2 years ago by mascguy (Christopher Nielsen)

Priority: HighNormal

comment:3 Changed 2 years ago by lukaso (Lukas Oberhuber)

I meant:

    echo 'macosx_deployment_target 10.12' | $dosudo tee -a ${PREFIX}/etc/macports/macports.conf
    echo 'macosx_sdk_version 10.12' | $dosudo tee -a ${PREFIX}/etc/macports/macports.conf

Plus

    echo 'export SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX10.12.sdk' >> ~/.profile
    echo 'export MACOSX_DEPLOYMENT_TARGET=10.12' >> ~/.profile

Basically, trying to compile for Macos 10.12. (Not sure I need the latter two statements.)

comment:4 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

MacPorts will intentionally ignore most of your environment variables.

comment:5 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Please attach the main.log file that shows what the problem was.

comment:6 Changed 2 years ago by lukaso (Lukas Oberhuber)

I have the extract from main.log above, but Indont have the full thing anymore. Sorry.

comment:7 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

The extract from main.log that you posted does not contain the relevant error message. That's why I asked to see the full log, and it's why our bug filing instructions ask you to always attach the log. If you no longer have the log, you could retrace your steps and regenerate it. Building for a different deployment target is not something most people do. To do it correctly, you'd need to build all of this port's dependencies that way too, and that's a lot to ask someone to do to try to reproduce this bug, so you can help us by providing the log that shows what went wrong.

comment:8 Changed 2 years ago by lukaso (Lukas Oberhuber)

This happened on a CI server where I don't have access to the main.log file. I've tried to reproduce the problem but it isn't happening anymore. So either my "fix" did nothing, or the race condition only happens on the server.

I'm also quite certain the only error messages I could find were the ones listed above.

Sorry I can't track it down any better (I did build the whole thing locally).

comment:9 Changed 2 years ago by barracuda156

Failed on Rosetta for me, reason unclear:

:info:build rm -f libbrotli.a
:info:build ar -crs libbrotli.a bin/obj/c/common/dictionary.o bin/obj/c/common/transform.o bin/obj/c/dec/bit_reader.o bin/obj/c/dec/decode.o bin/obj/c/dec/huffman.o bin/obj/c/dec/state.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/cluster.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/histogram.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/memory.o bin/obj/c/enc/metablock.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/utf8_util.o
:info:build gmake[1]: Leaving directory '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001/brotli'
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001" && /usr/bin/make -j6 -w all 
:info:build Exit code: 2
:error:build Failed to build p5.34-io-compress-brotli: command execution failed
:debug:build Error code: CHILDSTATUS 4525 2

comment:10 Changed 2 years ago by barracuda156

So it is really weird. I cleaned the build, called build anew, it failed again. I restarted the build (without cleanup), it went through, but gave the following warning:

ld: warning: in brotli/libbrotli.a, file was built for unsupported file format which is not the architecture being linked (ppc)
chmod 755 blib/arch/auto/IO/Compress/Brotli/Brotli.bundle
Manifying 2 pod documents
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001'

Changed 2 years ago by barracuda156

Attachment: main_Rosetta.log added

Updated log

Changed 2 years ago by lukaso (Lukas Oberhuber)

Attachment: main.log added

Full log of failure occurring.

comment:11 Changed 2 years ago by lukaso (Lukas Oberhuber)

Log was located at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/main.log

comment:12 in reply to:  9 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: duplicate
Status: newclosed

Replying to barracuda156:

Failed on Rosetta for me, reason unclear:

:info:build rm -f libbrotli.a
:info:build ar -crs libbrotli.a bin/obj/c/common/dictionary.o bin/obj/c/common/transform.o bin/obj/c/dec/bit_reader.o bin/obj/c/dec/decode.o bin/obj/c/dec/huffman.o bin/obj/c/dec/state.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/cluster.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/histogram.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/memory.o bin/obj/c/enc/metablock.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/utf8_util.o
:info:build gmake[1]: Leaving directory '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001/brotli'
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_perl_p5-io-compress-brotli/p5.34-io-compress-brotli/work/IO-Compress-Brotli-0.004001" && /usr/bin/make -j6 -w all 
:info:build Exit code: 2
:error:build Failed to build p5.34-io-compress-brotli: command execution failed
:debug:build Error code: CHILDSTATUS 4525 2

Certainly it is unclear from that output, which does not show what the problem was. In a failing parallel build, the failure is often above the line

make: *** Waiting for unfinished jobs....

which in this case is far before the end of the log. The failure in both attached logs is

make: *** read jobs pipe: Resource temporarily unavailable.  Stop.

which is a duplicate of #65496.

comment:13 Changed 2 years ago by elventear (Pepe Barbe)

Just got hit on Ventura x86_64 with this. Using build.jobs=1 did the trick for me.

Note: See TracTickets for help on using tickets.