FS#43524 - [camlp4] Incosistent assumptions with the OCaml compiler

Attached to Project: Community Packages
Opened by Yuri Albuquerque (Denommus) - Tuesday, 20 January 2015, 18:45 GMT
Last edited by Jürgen Hötzel (juergen) - Monday, 14 August 2017, 04:27 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Jürgen Hötzel (juergen)
Alexander F. Rødseth (xyproto)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
When trying to compile an OCaml package that uses camlp4, this error happens:
# Error: The files /usr/lib/ocaml/pervasives.cmi
# and /usr/lib/ocaml/camlp4/Camlp4.cmi make inconsistent assumptions
# over interface Pervasives

All it takes to solve it is to recompile the package with the same OCaml version installed on the system.


Steps to reproduce:
# pacman -S ocaml camlp4 ocaml-findlib opam
$ opam init
$ eval `opam config env`
$ opam install camlp4 ocamlfind
$ opam install eliom
This task depends upon

Closed by  Jürgen Hötzel (juergen)
Monday, 14 August 2017, 04:27 GMT
Reason for closing:  Fixed
Comment by Samantha McVey (samcv) - Friday, 10 June 2016, 04:29 GMT
Not sure if this is one of the things that has changed since this bug was reported, but I tried to follow your steps to reproduce and opam is not a package, though it is in the AUR (cannot be installed with pacman). Can the bug reporter please reply back if they were able to see if this is still an issue with the latest versions of packages. Also please let me know if this problem is or is not dependent on the package opam. From the error log it looks like it's a conflict between camlp4 and ocaml.
Comment by Eli Schwartz (eschwartz) - Tuesday, 08 August 2017, 22:58 GMT
ping new maintainers/packagers...
Comment by Alexander F. Rødseth (xyproto) - Wednesday, 09 August 2017, 21:40 GMT
Thanks for reporting and bug wrangling.

We can add a dep to a specific version of ocaml.
Comment by Eli Schwartz (eschwartz) - Sunday, 13 August 2017, 20:22 GMT
Hmm, on second look it appears that back in October 2016, camlp4 started depending on ocaml>=some_ocaml_ver, can I assume this was meant to fix problems like this?

I'm not really an ocaml user, but it sounds like that's basically what this bug report was about -- ocaml would freak out when related/dependent projects were compiled with something other than the exact same version of ocaml.
(But if so, maybe it should be a strict = rather than >=)
Comment by Jürgen Hötzel (juergen) - Monday, 14 August 2017, 04:26 GMT
Thanks for the updates! I wasn't aware of this bug report.

When I took over maintainership of OCaml I also started to rebuild all dependent packages for each OCaml release because OCaml updates are
usually not binary compatible.

Loading...