Использование исполняемого файла в качестве библиотеки в дюне

Я создаю проект с использованием дюны, и я столкнулся со следующей ситуацией. По сути, мой проект зависит от другого проекта, разработанного не мной, из которого я хочу использовать некоторые части исходного кода.

Вот более-менее дерево моего проекта

      my_project/
|---dune-project
|---src/
   |---dune
   |---extrenal-project/
      |---dune-project
      |---dune
      |---src/
         |---dune
   |---src-file.ml

Проблема в том, что есть файл, который строит его как , а не какlibrary. Поэтому я не могу включить его как библиотеку в свой файл. В идеале я не хочу изменять файл внутри .

Я пробовал ряд комбинаций. Вот текущий статус моегоduneфайл:

      (dirs external-project)

(executable
 (name myexec)
 (libraries containers)
 (modules Myexec)
 (promote (until-clean) (into ".."))
)

(env (dev (flags (:standard -warn-error -A))))

Что позволяет мне правильно скомпилировать, но не позволяет ссылаться ни на один из его файлов. я тоже пробовал(dirs external-project external-project/src)но безуспешно.

Итак, мой вопрос: есть ли способ сослаться наexternal-projectкак библиотека, хотя она построена какexecutable?

Спасибо за вашу помощь!

0 ответов

Другие вопросы по тегам