Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.3.0 issue: Debug "opam believes some required external dependencies are missing." in a headless CI run #6297

Closed
MSoegtropIMC opened this issue Nov 14, 2024 · 2 comments

Comments

@MSoegtropIMC
Copy link

Since the update to 2.3.0 I see on Homebrew this message:

opam believes some required external dependencies are missing. opam can:
> 1. Run brew to install them (may need root/sudo access)
  2. Display the recommended brew command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 4

See https://github.com/coq/platform/actions/runs/11838273102/job/32987032575#step:7:631

Since I cannot reproduce this locally (I am locally using MacPorts), I need a way to know what went wrong in the CI runner. It would really help if opam would default to list the brew commands.

Also a general `--headless' option would help, which would produce more useful output in headless scenarios.

Note: I saw that conf-bison has two hands - see https://github.com/coq/platform/actions/runs/11838273102/job/32987032575#step:7:631.

Does this mean there is an issue with conf-bison?

I must say I don't quite understand how my build works with homebrew. The log says that bison is keg-only ref which means it is not put into the PATH by homebrew. On the other hand I am sure that I have packages which cannot live with the MacOS supplied bison 2.3. So somehow opam manages to get the brew keg-only packages in the path - or the github runners come by default with an updated bison. I have 8 such keg-only dependencies, according to the log.

@rjbou
Copy link
Collaborator

rjbou commented Nov 14, 2024

From the log, conf-pkg-config is to install:

  ∗ conf-pkg-config                3                 [required by conf-adwaita-icon-theme, conf-mpfr]

From the log too, on install external dependencies steps, pkg-config is installed by opam via brew, but it seems that it is already installed

- ::warning::pkgconf 2.3.0_1 is already installed and up-to-date.%0ATo reinstall 2.3.0_1, run:%0A  brew reinstall pkgconf%0A

But opam checks and tries to install pkg-config and not pkgconf.

I think you hit ocaml/opam-repository#26878, which is now resolved by ocaml/opam-repository#26891, can you retry a CI launch with main repo updated?

@MSoegtropIMC
Copy link
Author

@rjbou : thank you very much for your analysis! The MacOS Ci works again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants