2021-03-03 03:14 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0001343Frama-CKernel > Makefilepublic2014-02-12 16:58
Reporterdhekir 
Assigned Tosignoles 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
Product VersionFrama-C Oxygen-20120901 
Target VersionFixed in VersionFrama-C Fluorine-20130401 
Summary0001343: "make clean" does not work when upgrading OCaml
DescriptionAfter upgrading from OCaml 3.12 to 4.00, when trying to run "make clean" on the root of the Frama-C source directory, after having already compiled everything using OCaml 3.12, the makefile tries to run a target related to ocamlgraph before cleaning things, but since there are old .cmi files in its directories (which I wanted to be cleaned as well), it tries instead to build things before cleaning them, which gives annoying error messages:

$ make clean
Building ocamlgraph
make[1]: Entering directory `/local/user/framac/oxygen/ocamlgraph'
ocamlc.opt -I src -I lib -pack -g -o graph.cmo src/sig.cmi src/sig_pack.cmi src/dot_ast.cmi lib/unionfind.cmo lib/heap.cmo lib/bitv.cmo src/version.cmo src/util.cmo src/blocks.cmo src/persistent.cmo src/imperative.cmo src/delaunay.cmo src/builder.cmo src/classic.cmo src/rand.cmo src/oper.cmo src/components.cmo src/path.cmo src/nonnegative.cmo src/traverse.cmo src/coloring.cmo src/topological.cmo src/kruskal.cmo src/flow.cmo src/dominator.cmo src/graphviz.cmo src/gml.cmo src/dot_parser.cmo src/dot_lexer.cmo src/dot.cmo src/pack.cmo src/gmap.cmo src/minsep.cmo src/cliquetree.cmo src/mcs_m.cmo src/md.cmo src/strat.cmo src/fixpoint.cmo src/leaderlist.cmo src/contraction.cmo
File "_none_", line 1:
Error: src/sig.cmi
is not a compiled interface for this version of OCaml.
It seems to be for an older version of OCaml.
make[1]: *** [graph.cmo] Error 2
make[1]: Leaving directory `/local/user/framac/oxygen/ocamlgraph'
make: *** [lib/graph.cmi] Error 2


After manually removing such files, I was able to run "make clean". I believe a minor patch should do it, however it's quite tedious to reproduce the bug: it requires configuring an old OCaml, compiling, then configuring a new OCaml before trying "make clean" again.
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes

~0003651

signoles (manager)

Thanks for the report. Even if I did not test my patch on your specific case (switch of OCaml versions), I tested it on a related known issue which seems to be now solved. Thus it should be ok.

~0004596

signoles (manager)

Fix committed to stable/neon branch.
+Notes

-Issue History
Date Modified Username Field Change
2013-01-08 15:24 dhekir New Issue
2013-01-08 15:24 dhekir Status new => assigned
2013-01-08 15:24 dhekir Assigned To => signoles
2013-01-08 16:36 svn
2013-01-08 16:36 svn Status assigned => resolved
2013-01-08 16:36 svn Resolution open => fixed
2013-01-08 16:40 signoles Note Added: 0003651
2013-04-19 11:05 signoles Fixed in Version => Frama-C Fluorine
2013-04-19 11:05 signoles Status resolved => closed
2013-12-19 01:11 signoles Source_changeset_attached => framac master e6fb626b
2014-02-12 16:53 signoles Source_changeset_attached => framac stable/neon e6fb626b
2014-02-12 16:58 signoles Note Added: 0004596
2014-02-12 16:58 signoles Status closed => resolved
+Issue History