Opened 3 months ago
Closed 7 weeks ago
#70547 closed defect (fixed)
Unable to install p5.34-*. Possible dependency cycle
Description
Computing dependencies for p5.34-b-cow ---> Dependencies to be installed: p5.34-test-simple p5.34-module-pluggable p5.34-module-runtime p5.34-module-build p5.34-software-license p5.34-data-section p5.34-text-template p5.34-sub-exporter p5.34-data-optlist p5.34-params-util p5.34-config-autoconf p5.34-file-slurper p5.34-test-warnings p5.34-cpan-meta-check Error: The following dependencies were not installed because all of them have unmet dependencies (likely due to a dependency cycle): p5.34-test-simple p5.34-module-pluggable p5.34-module-runtime p5.34-module-build p5.34-software-license p5.34-data-section p5.34-text-template p5.34-sub-exporter p5.34-data-optlist p5.34-params-util p5.34-config-autoconf p5.34-file-slurper p5.34-test-warnings p5.34-cpan-meta-check Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port p5.34-b-cow failed FAILED COMMAND: port install p5.34-b-cow
I've tried installing the dependencies one at a time in various orders, but I always get the same error message. This is on a fresh MacBook Pro M1 (ARM64) with no existing macports installation. I'm installing into a custom directory (/opt/digikam.arm64).
Change History (30)
comment:1 Changed 3 months ago by nanigashi-uji (Nanigashi Uji)
comment:2 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)
Cc: | andikawiraa nanigashi-uji dbevans added |
---|---|
Keywords: | p5.34-test-simple p5.34-module-pluggable p5.34-module-runtime p5.34-module-build p5.34-software-license p5.34-data-section p5.34-text-template p5.34-sub-exporter p5.34-data-optlist p5.34-params-util p5.34-config-autoconf p5.34-file-slurper p5.34-test-warnings p5.34-cpan-meta-check removed |
Port: | p5.34-test-simple p5.34-module-pluggable p5.34-module-runtime p5.34-module-build p5.34-software-license p5.34-data-section p5.34-text-template p5.34-sub-exporter p5.34-data-optlist p5.34-params-util p5.34-config-autoconf p5.34-file-slurper p5.34-test-warnings p5.34-cpan-meta-check added |
Has duplicate #70541.
comment:3 Changed 3 months ago by jmroot (Joshua Root)
p5.34-test-simple -> p5.34-module-pluggable -> p5.34-module-runtime -> p5.34-module-build -> p5.34-software-license -> p5.34-data-section -> p5.34-sub-exporter -> p5.34-data-optlist -> p5.34-params-util -> p5.34-test-simple
comment:4 Changed 3 months ago by jmroot (Joshua Root)
The proximate cause is likely the dependency changes in [9ca0a3a38c3dbc3f613de0d0e9a7d9b13c923e55/macports-ports].
comment:5 Changed 3 months ago by M-Rick
I wanted to build gd2 and have the same error with all the p5.34 modules…
comment:6 Changed 3 months ago by cgilles (HumanDynamo)
Fully reproducible problem on my computer too. Reported in bug #70643
comment:7 Changed 3 months ago by cgilles (HumanDynamo)
Cc: | cgilles added |
---|
comment:8 Changed 2 months ago by cgilles (HumanDynamo)
Any update here? As Perl is a core component used by many other ports, a macports install can be quickly broken due to this bug.
For me this bug must be considerated with a HIGH priority...
comment:9 Changed 2 months ago by ryandesign (Ryan Carsten Schmidt)
If you or anybody knows what change(s) to make to what port(s) to fix this or any other problem, you can submit a pull request.
comment:10 Changed 2 months ago by cgilles (HumanDynamo)
Hi Ryan,
I tried to take a look in macports port configuration file, following the Nanigashi patch but it do not work at all on my computer (M1 + Somona 14.8.1 + Xcode 15.4). I'm lost...
Gilles
comment:11 Changed 2 months ago by cgilles (HumanDynamo)
Ok, i found a workaround to this problem (it's not the solution).
In my whole macports install, git port is installed and Perl dependency is enabled by default. The fix is:
port install git -perl5_34
comment:12 Changed 8 weeks ago by ryandesign (Ryan Carsten Schmidt)
Cc: | kwolcott added |
---|
Has duplicate #70845.
comment:13 Changed 8 weeks ago by ddrum2000
Cc: | ddrum2000 added |
---|
comment:14 Changed 8 weeks ago by lcvisser (Ludo Visser)
Cc: | lcvisser added |
---|
comment:15 Changed 8 weeks ago by exodist (Chad Granum)
https://metacpan.org/release/EXODIST/Test-Simple-1.302204/source/META.json#L46
Module::Pluggable is a suggestion, not a hard dependency. The meta-data is clear on this. So your system needs to ignore this suggestion.
comment:16 Changed 8 weeks ago by Dave-Allured (Dave Allured)
Cc: | Dave-Allured added |
---|
comment:17 Changed 8 weeks ago by Dave-Allured (Dave Allured)
@exodist Thank you. PR submitted: https://github.com/macports/macports-ports/pull/25909
comment:18 Changed 7 weeks ago by Dave-Allured (Dave Allured)
Help wanted. To expedite, please test this PR on your system. Start with a failing build, apply the two changes in the PR (patch and revbump), then install p5.34-test-simple
. Report the results on the PR. Include identification of your system type, OS version, and Xcode version. Thank you.
comment:19 Changed 7 weeks ago by lcvisser (Ludo Visser)
I confirm it works. I'll add a comment to the PR if you can clarify what you mean with "System type": ARM vs Intel or something else?
comment:20 Changed 7 weeks ago by Dave-Allured (Dave Allured)
@lcvisser thanks for testing! Yes, system type is ARM vs. Intel. The Macports standard instructions for identification say this:
"Triple-click and copy the next line and paste it into your shell. It will copy your OS and Xcode version to the clipboard. Paste it here replacing this section."
sh -c 'echo "macOS $(sw_vers -productVersion) $(sw_vers -buildVersion) $(uname -m)"; xcode=$(xcodebuild -version 2>/dev/null); if [ $? == 0 ]; then echo "$(echo "$xcode" | awk '\''NR==1{x=$0}END{print x" "$NF}'\'')"; else echo "Command Line Tools $(pkgutil --pkg-info=com.apple.pkg.CLTools_Executables | awk '\''/version:/ {print $2}'\'')"; fi' | tee /dev/tty | pbcopy
This should generate two short text lines with all the requested identification, like this for my mac. Just copy these lines, or equivalent, into your message.
macOS 14.7 23H124 x86_64 Xcode 15.4 15F31d
comment:21 Changed 7 weeks ago by kwolcott
Hope this helps:
macOS 15.0 24A335 arm64 Xcode 16.0 16A242d
Ken Wolcott
comment:22 Changed 7 weeks ago by Dave-Allured (Dave Allured)
Ken, are you saying that you actually tested this PR, starting from a failing configuration? That is what I need to add success status to the PR.
comment:23 Changed 7 weeks ago by kwolcott
Sorry, no :-( :-( I just work up from a nap and forgot all about the context. [face-palm]
comment:25 Changed 7 weeks ago by Dave-Allured (Dave Allured)
No problem. I found time to run my own test. Looks like it is working fine, and no more circular deps.
comment:26 follow-up: 29 Changed 7 weeks ago by christophecvr (christophecvr)
Replying to Dave-Allured:
I was facing same issue when installing intltool macos 10.15.7 Xcdode 11.5 CommandLineTools 11.5 Macbookpro mid 2010 Intel i7 x86_64 arch
Just applied You're patch and oeeff intltool is build . Just one note at the end
p5.34-test-warnings has the following notes: p5.34-test-warnings can optionally use p5.34-test-simple, but does not depend on it because that would cause a circular dependency.
Thanks
comment:27 Changed 7 weeks ago by lcvisser (Ludo Visser)
Works for
macOS 14.5 23F79 arm64 Xcode 16.0 16A242d
comment:28 Changed 7 weeks ago by Dave-Allured (Dave Allured)
@christophecvr @lcvisser Thanks for testing. I added your reports to the PR progress notes.
comment:29 Changed 7 weeks ago by Dave-Allured (Dave Allured)
christophecvr said:
... Just applied You're patch and oeeff intltool is build . Just one note at the end
p5.34-test-warnings has the following notes: p5.34-test-warnings can optionally use p5.34-test-simple, but does not depend on it because that would cause a circular dependency.
It looks like the circular dependency on that other port was ultimately the same as this one. I think I will propose to revert that other dependency change, because if the PR is accepted, this fix will solve both. I already tested that revert locally, and it seems to work fine.
I wonder if there are any other Perl circular dep patches out there, caused by the same thing.
comment:30 Changed 7 weeks ago by Dave-Allured (Dave Allured)
Owner: | set to Dave-Allured |
---|---|
Resolution: | → fixed |
Status: | new → closed |
I also met the same isssue. Some perl modules can be installed by changing Portfiles manually (Not checked, but can be installed.)