如何将 -thread 添加到 _oasis 以使用 Core 进行编译
How to add -thread to _oasis to compile with Core
我一直在使用 oasis
使用一些外部包来构建我的项目。现在我也想使用 Jane Street 的核心包。但是,为了使用 Core 进行编译,您必须将 -thread
标志传递给 ocamlfind
,例如像这样:
ocamlfind ocamlc -linkpkg -thread -package core foo.ml -o foo
如何告诉 oasis
添加 -thread
标志?现在,我的 _oasis 文件包含如下内容:
Executable "foo"
BuildDepends: core,batteries,bar
Path: src
MainIs: foo.ml
CompiledObject: best
禁止从同一项目中收集我自己的实用程序。当我 运行 oasis setup
和 make
时,我得到这个错误:
ocamlfind: Error from package `threads': Missing -thread or -vmthread switch
我查看了 Oasis 手册,common fields for all sections of the _oasis file, nor the fields that are specific to the Excutable section 似乎都不适合为 ocamlfind
添加命令行标志。
我认为 可能是相关的,但是当我尝试添加它建议的额外键时,-thread
作为 XOCamlbuildExtraArgs
的值,我得到一个错误:
E: Field XOCamlbuildExtraArgs is not defined in schema Executable
您需要将以下行添加到您的 _tags 文件中:
<**/*>: thread
OASIS_START
和OASIS_STOP
分隔符之间会有一堆东西,不要在它们之间添加任何东西,而是在之前或之后。
我一直在使用 oasis
使用一些外部包来构建我的项目。现在我也想使用 Jane Street 的核心包。但是,为了使用 Core 进行编译,您必须将 -thread
标志传递给 ocamlfind
,例如像这样:
ocamlfind ocamlc -linkpkg -thread -package core foo.ml -o foo
如何告诉 oasis
添加 -thread
标志?现在,我的 _oasis 文件包含如下内容:
Executable "foo"
BuildDepends: core,batteries,bar
Path: src
MainIs: foo.ml
CompiledObject: best
禁止从同一项目中收集我自己的实用程序。当我 运行 oasis setup
和 make
时,我得到这个错误:
ocamlfind: Error from package `threads': Missing -thread or -vmthread switch
我查看了 Oasis 手册,common fields for all sections of the _oasis file, nor the fields that are specific to the Excutable section 似乎都不适合为 ocamlfind
添加命令行标志。
我认为 -thread
作为 XOCamlbuildExtraArgs
的值,我得到一个错误:
E: Field XOCamlbuildExtraArgs is not defined in schema Executable
您需要将以下行添加到您的 _tags 文件中:
<**/*>: thread
OASIS_START
和OASIS_STOP
分隔符之间会有一堆东西,不要在它们之间添加任何东西,而是在之前或之后。