如何在ocamlbuild中使用线程编译器标志?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (11)

我在用Jane Street's async_core通过在_tags中添加package(async_core)

当我用ocamlbuild -use-ocamlfind -I src test/test_airport.native,它给了我以下错误:

camlfind ocamlopt -linkpkg -package async_core -package unix -package netclient -package mongo -package xml-light src/airport.cmx test/test_airport.cmx -o test/test_airport.native ocamlfind: Error from package `threads': Missing -thread or -vmthread switch

因此,我更改了ocamlbuild命令如下:

ocamlbuild -use-ocamlfind -cflag -thread -I src test/test_airport.native

但是错误仍然是相同的。

提问于
用户回答回答于

应该使用-documentation

% ocamlbuild -documentation | grep thread
flag {. byte, link, ocaml, program, thread .} "threads.cma -thread"
flag {. link, native, ocaml, program, thread .} "threads.cmxa -thread"
flag {. doc, ocaml, thread .} "-I +threads"
flag {. compile, ocaml, thread .} "-thread"

-tag thread到ocamlbuild调用行,或者只是thread。

扫码关注云+社区