|Anonymous | Login | Signup for a new account||2018-09-22 12:40 CEST|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0006754||OCaml||standard library||public||2015-01-19 07:17||2017-10-12 15:43|
|Target Version||4.07.0+dev/beta2/rc1/rc2||Fixed in Version|
|Summary||0006754: topdirs.cmi multiple locations|
$ find /home/ygrek/.opam/4.02.1/lib/ocaml| grep topdirs.cmi
and every invocation of compiler referencing compiler-libs results in ocamlfind warning
findlib: [WARNING] Interface topdirs.cmi occurs in several directories: /home/ygrek/.opam/4.02.1/lib/ocaml/compiler-libs, /home/ygrek/.opam/4.02.1/lib/ocaml
The md5 sum of both modules is the same. I wonder what would be the best way to remove this warning - either the OCaml distribution should install it only in one place or ocamlfind should check md5 and not report it as duplicate because whichever is used will not matter?
|Tags||No tags attached.|
Special-casing the md5 in ocamlfind is of course not the answer. It's not even stable between builds of ocaml.
Why can't topdirs.cmi be installed only in lib/ocaml, anyway?
I mean that once ocamlfind detects same cmi occuring in multiple dirs it could check the md5 of those cmi and if they all are equal - it means interfaces are really equal.
But I agree that installing in only one location would be the best solution.
|Interesting. My first reaction was put it into lib/ocaml/compiler-libs, where you also find toploop, topmain, and topstart. @whitequark, do you have any particular reason to want it in lib/ocaml ?|
|I thought topfind uses Topdirs but I now see that it does #directory "+compiler-libs" so that doesn't matter anyway.|
edited on: 2015-07-23 21:50
Is it safe to move/remove lib/ocaml/topdirs.cmi? Anything using ppx_blob, for example, generates lots of findlib warnings.
Moving that file and adding '#directory "+compiler-libs";;' to my ~/.ocamlinit allowed utop to work and code to compile without the findlib warnings.
|@doligez, right, hcarty's comment above is why I wanted it in lib/ocaml, I think|
|Any chance to see this resolved for 4.03 ?|
This warning is, by default, fatal to ocamlmktop, so one has to do "-warn-error -31" if making a custom top level with compiler-libs.
Does anyone know why warning 31 should be fatal for ocamlmktop but not ocamlc?
Removing lib/ocaml/topdirs.cmi seems the cleanest solution to me. For the record, this would require some adjustments in opam (for the generated .ocamlinit) and oasis (the generated setup.ml file in dynamic update mode) and maybe other libs. Before doing anything, it would wiser I think to announce/discuss it on the list, so that everybody can think and report on the possible implications.
In any case, it would be great to fix this. I can provide some help if needed.
|We missed the timeline for 4.03 on this one. If someone (Philippe included) is willing to take action on this issue (starting a mailing-list discussion etc.), now would be an excellent time, so that we get a change early in the 4.04+dev lifetime.|
|2015-01-19 07:17||ygrek||New Issue|
|2015-01-19 07:20||whitequark||Note Added: 0013142|
|2015-01-19 07:27||ygrek||Note Added: 0013143|
|2015-02-06 18:42||doligez||Note Added: 0013241|
|2015-02-06 18:43||doligez||Status||new => acknowledged|
|2015-02-06 18:43||doligez||Target Version||=> 4.03.0+dev / +beta1|
|2015-02-06 18:46||whitequark||Note Added: 0013242|
|2015-07-23 21:45||hcarty||Note Added: 0014249|
|2015-07-23 21:50||hcarty||Note Edited: 0014249||View Revisions|
|2015-07-23 23:27||whitequark||Note Added: 0014250|
|2015-12-01 11:59||hhugo||Note Added: 0014942|
|2016-01-05 14:17||johnwhitington||Note Added: 0015227|
|2016-01-13 16:16||pveber||Note Added: 0015253|
|2016-04-17 20:01||gasche||Note Added: 0015776|
|2016-04-17 20:01||gasche||Target Version||4.03.0+dev / +beta1 => 4.03.1+dev|
|2017-02-16 14:00||doligez||Target Version||4.03.1+dev => undecided|
|2017-02-23 16:43||doligez||Category||OCaml standard library => standard library|
|2017-03-15 15:11||doligez||Target Version||undecided => 4.06.0 +dev/beta1/beta2/rc1|
|2017-10-05 18:03||doligez||Target Version||4.06.0 +dev/beta1/beta2/rc1 => 4.07.0+dev/beta2/rc1/rc2|
|Copyright © 2000 - 2011 MantisBT Group|