Я использовал oasis
для создания своего проекта с использованием некоторых внешних пакетов. Теперь я также хочу использовать основной пакет Джейн Стрит. Однако для компиляции с 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, и ни общие поля для всех разделы файла _oasis, ни поля, относящиеся к разделу Excutable кажется подходящим для добавления флага командной строки для ocamlfind
.
Я подумал, что этот ответ может быть актуальным, но когда я попытался добавить дополнительные ключи, которые он предложил, с -thread
в качестве значения для XOCamlbuildExtraArgs
, у меня ошибка:
E: Field XOCamlbuildExtraArgs is not defined in schema Executable