Как можно использовать набора инструментов OCAMLFIND / OCAMLBUILD с проектами - локальными копиями пакетов?

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

Но для сложных пакетов, таких как батареи, в комплекте, кажется, сильное ожидание, что они связаны с проектом через ocamlfind. Кажется, ocamlfind предполагает, что пакеты будут установлены по всему миру. (Я понимаю, что позволяет переменным окружающей среды и ее Conf указывают на альтернативные местоположения, но она принципиально по-прежнему по-видимому, построено вокруг предположения, что пакеты настроен на глобальном масштабе - это не имеет эквивалента -I или -L Флаги для динамического расширения пути поиска для пакетов, например. Может быть возможно установить переменные среды для динамического переопределения конфигурации OCAMLFIND для поиска проекта-местного дерева, но это гораздо более неловко, чем простые аргументы Также кажется, что это было бы сложно сделать это без одновременного Удаление обнаруженность основных системных пакетов в первичном Site-lib , которые также могут быть необходимы.)

Что такое Sane Contrategy для строительства и наращивания против нетривиальных пакетов 3-го вечеринок в рамках проекта-местного дерева для проекта, использующего ocamlbuild?

6
задан jrk 1 September 2011 в 18:45
поделиться