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

Test with ocaml-system #327

Open
kit-ty-kate opened this issue Jun 20, 2024 · 3 comments
Open

Test with ocaml-system #327

kit-ty-kate opened this issue Jun 20, 2024 · 3 comments

Comments

@kit-ty-kate
Copy link
Contributor

Reopening a separate issue after #43 (comment) was closed

this feature is still desirable

@shonfeder
Copy link
Contributor

shonfeder commented Jun 20, 2024

Thanks! It would help us with prioritization if you could give a nut-shelled account of why we need this in the CI and how it would show up in the CI results. As it is, there are like 6 years worth of discussions across different PRs and issues to try comb through, and afaict none of them give a concise statement of how this work is meant to benefit opam repo's CI, at least not one that is clear to me given my limited context. Thanks in advance!

Something that would really help with prioritization is a remark on the impact of NOT having this feature in place currently.

@kit-ty-kate
Copy link
Contributor Author

ocaml-system is one of the default OCaml compiler that people will encounter in the wild. People that simply install ocaml and opam through their system package manager will get it.

The limitations of ocaml-system (the installation of OCaml being split between /usr/... and the opamroot) are well known but not tested at all anywhere. So it seems reasonable to test it. The typical issues can in build-system themselves where they look at /usr/... for packages instead of the opamroot, or if the ocaml-system package itself if the substitute for the ocaml binary (which is a script in this context) gets broken.

@samoht
Copy link

samoht commented Oct 17, 2024

Related to this, I've recently hit that bug locally recently:

#=== ERROR while installing zarith.1.14 =======================================#
# context     2.2.0 | macos/arm64 |  | [https://opam.ocaml.org#f302b6aaf01995b706f9b5a0a8fc2e6bb299eae8](https://opam.ocaml.org/#f302b6aaf01995b706f9b5a0a8fc2e6bb299eae8)
# path        ~/git/tagit/_opam/.opam-switch/build/zarith.1.14
# command     ~/.opam/opam-init/hooks/sandbox.sh install make install
# exit-code   2
# env-file    ~/.opam/log/zarith-29532-6d2ce3.env
# output-file ~/.opam/log/zarith-29532-6d2ce3.out
### output ###
# [...]
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/z.cmx
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/zarith_version.cmx
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/zarith.cmxa
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/z.mli
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/zarith_top.cma
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/big_int_Z.cmi
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/q.cmi
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/z.cmi
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/libzarith.a
# Installed /Users/samoht/git/tagit/_opam/lib/zarith/zarith.cma
# ocamlfind: /Users/samoht/.opam/default/lib/ocaml/ld.conf: Operation not permitted
# make: *** [install] Error 2

The ocamlfind installation runes used to be racy so the build/install steps were split at one point in the opam file of the projects that continues to use ocamlfind install (which I suspect Zarith do).

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

3 participants