-
-
Notifications
You must be signed in to change notification settings - Fork 196
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
OCaml <=14.12 doesn't support glibc>=2.34 #1094
Comments
This should have been fixed in opam in ocaml/opam-repository#19855 and for esy in You can try removing the The bigger problem seems to be that |
There are also build problems with GCC 12, e.g. I get this on Fedora 37:
Which got fixed here in 4.14.x: ocaml/ocaml@f280aaa and in 4.12: ocaml/ocaml@7481281 Although FWIW I can install 'OCaml 4.12.1' from opam... is there a way to tell |
Line 71 in 141f70f
"ocaml" package version 4.12.x is hosted on this branch https://github.com/esy-ocaml/ocaml/tree/4.12.1+esy You should open a PR (or I can) to this branch by cherry-picking the commit you cited. After that you need to wait for someone to review and merge your PR and publish it. In the meantime you can consume your own fork with esy resolution syntax. You have an example just above Line 68 in 141f70f
|
Thanks for the hints (I wasn't familiar with how esy works, just opam). I had to use resolutions to pin my fork (otherwise the solver failed thinking the version is not <4.13). Also for future reference the json here is quite picky: you can't have trailing
PR here esy-ocaml/ocaml#64 |
FWIW revery itself still doesn't build, even with that 4.12.1 bugfix, but it gets further and fails here:
It looks like |
The following change to package.json gets me a bit closer to being able to build it (the versions in package.json appeared to be too old to work with 4.12.1, OTOH with ocaml-lsp-server we need to be careful to avoid pulling in the 5.0 version which 'opam' knows how to avoid, but 'esy' doesn't and I had to work that around by adding a ^1.9.0 in the devDependencies): diff --git a/package.json b/package.json
index cae6b349..63eefd69 100644
--- a/package.json
+++ b/package.json
@@ -37,7 +37,7 @@
"dependencies": {
"@opam/bos": "0.2.0",
"@opam/ctypes": "0.15.1",
- "@opam/dune": "^2.5.0",
+ "@opam/dune": ">=2.5.0 <4",
"@opam/dune-configurator": "*",
"@opam/reason": "^3.6.2",
"@opam/lru": "bryphe/lru:lru.opam#2708c70",
@@ -45,7 +45,7 @@
"@opam/lwt_ppx": "^1.1.0",
"@opam/markup": "0.8.2",
"@opam/ppx_deriving": "*",
- "@opam/ppx_optcomp": "v0.14.0",
+ "@opam/ppx_optcomp": ">=v0.14.0 <=v0.16.0",
"@opam/omd": "ocaml/omd:omd.opam#1535e3c",
"@opam/uucp": "*",
"@opam/uutf": "*",
@@ -70,6 +70,9 @@
"devDependencies": {
"ocaml": "4.12.x",
"esy-astyle": "zbaylin/esy-astyle#59bc21a",
- "@opam/ocaml-lsp-server": "*"
+ "@opam/ocaml-lsp-server": "^1.9.0"
+ },
And then I get to the SDL2 build error you mentioned |
The next error is a missing
Which then goes on a bit further, but fails to build here:
Looks like there are too many things that need to be updated to get revery to build on Fedora37, but I hope that the above helps someone pick up where I left off. |
Thanks for your works on this. I can merge PR to revery-ui so I will try to review esy-sdl2 PR this week.
The bound on dune should be correct before your modification 🤔 If you send a PR to revery that add upper bound you found I can merge this quickly (one file to review) Also the issue you got with resolutions is on our end we wasn't strict enough on version. If you show next error I can help you solving the issue. |
I pushed what I have here: https://github.com/edwintorok/esy-skia/commits/master but as soon as I fix one error there are others, some of which have upstream commits to backport (and some do not because the code got deleted/changed substantially upstream):
I don't think it is worth continuing down this route: upstream must've fixed these build errors in newer versions, so updating to the latest upstream might be best (although that might imply updating some OCaml bindings for skia too?), however there are a lot of conflicts (are there some local changes to skia that were not upstream?) |
master
)I am trying to build revery on Arch Linux, but it fails when compiling OCaml. I found this comment on an OCaml repository's issue (ocaml/ocaml#10250 (comment)) that completely seems related to the problem. The
glibc
is at version2.35
on my system, but OCaml<14.12
doesn't supportglibc>=2.34
. The wiki doesn't seem to mention that compatibility issue.The text was updated successfully, but these errors were encountered: