我按照Frama-C开发指南(https://frama-c.com/download/frama-c-plugin-development-guide.pdf)的说明创建了我自己的Frama-C插件.
但是,我需要在我的.ml文件中使用Ocaml手册(http://caml.inria.fr/pub/docs/manual-ocaml/libref/Mutex.html)提供的Mutex模块.要使用此模块,我需要一个特定的命令行:
ocamlc -thread unix.cma threads.cma myfiles.ml
(如下所述:无法找到OCaml Mutex模块).
要编译我的文件,我使用构建插件的Makefile(插件开发指南第33页).所以我试图将这些.cma文件和-thread选项链接到这个Makefile ...但我没有成功.如何加载此Mutex模块?
我尝试了什么:
我尝试使用生成的.Makefile.plugin.generated中定义的一些变量:
我在Makefile中写了以下几行:
PLUBIN_EXTRA_BYTE = unix.cma threads.cma
要么 TARGET_TOP_CMA = unix.cma threads.cma
并为线程选项:
PLUGIN_OFLAGS = -thread
Run Code Online (Sandbox Code Playgroud)
要么 PLUGIN_LINK_BFLAGS= -thread
要么 PLUGIN_BFLAGS= -thread
但是Mutex模块从来没有得到认可,我也不确切知道它是否是一个很好的解决方案......
我写:
open Dynlink
loadfile "unix.cma";; …