0

I've installed frama-c using opam (on Ubuntu 16.04). I try to install the "hello_world.ml" as plugin (of the plugin development guide) using a Makefile

    FRAMAC_SHARE :=$(shell frama-c.byte -print-path)
    FRAMAC_LIBDIR :=$(shell frama-c.byte -print-libpath)
    PLUGIN_NAME = Hello
    PLUGIN_CMO = hello_word
    include $(FRAMAC_SHARE)/Makefile.dynamic

Running make, I get this:

     /home/amira/.opam/system/share/frama-c/Makefile.dynamic:295: .depend: Aucun fichier ou dossier de ce type
     /home/amira/.opam/system/share/frama-c/Makefile.plugin:204: *** "The file 'Hello.mli' must be provided. The simplest workaround is 'touch Hello.mli'.". Arrêt.

How can I resolve this error?

Amiramet
  • 59
  • 2
  • Did you try the indications of the second warning (`touch Hello.mli`)? – byako May 13 '16 at 12:09
  • `Hello.mli` is not created. But after running `make` I get this `Ocamldep ./.depend Generating META.frama-c-hello make: *** Aucune règle pour fabriquer la cible « hello_word.cmo », nécessaire pour « Hello.cmi ». Arrêt.` – Amiramet May 13 '16 at 12:25

2 Answers2

0

You should try to follow the advice:

"The file 'Hello.mli' must be provided. The simplest workaround is 'touch Hello.mli'

The message .depend: Aucun fichier ou dossier de ce type is not an error. It is an artefact of a include .depend that will be generated automatically. Gnu make will restart automatically after building it to take it into account.

François Bobot
  • 316
  • 1
  • 4
0

I run touch Hello.mli and then I run make and I get this :

Ocamldep     ./.depend
Generating   META.frama-c-hello
make: ***  Aucune règle pour fabriquer la cible « hello_word.cmo », nécessaire pour « Hello.cmi ». Arrêt.
Amiramet
  • 59
  • 2
  • Instead of an answer, please edit your question to reflect the current issue. In addition, you should also give us the list of files that exist in your directory. If you have followed section 2.2.4, you should have an `hello_world.ml` file together with the `Makefile`. In addition, section 2.2.5 explicitely says that `Hello.mli` is required. – Virgile May 13 '16 at 14:41
  • My directory contains : Hello.cmi Hello_DEP Hello.mli hello_world.ml Makefile META.frama-c-hello – Amiramet May 13 '16 at 15:09
  • And what is the content of your `Makefile`? When I run `make` in a directory that contains `Makefile`, `Hello.mli` and `hello_world.ml` from p17 and 18 of the manual on a machine with Magnesium installed, everything is fine. – Virgile May 17 '16 at 14:10