Моя конфигурация выглядит следующим образом:
OCaml устанавливается Homebrew в соответствии с рецептом по умолчанию. Он находится в /usr/local/Cellar/objective-caml/3.12.0/[bin,lib,share]
, содержимое которого связано с /usr/local/[bin,lib,share]
.
Сторонняя библиотека (LLVM) установила символические ссылки в /usr/local/lib/ocaml/*
. Важно отметить, что /usr/local/lib/ocaml
сама по себе является не символической ссылкой на Homebrew Cellar, а папкой, содержащей ссылки на отдельные файлы по пути OCaml Cellar, поэтому эти файлы сторонних библиотек находятся в пути /usr/local/lib/ocaml/
, а не в исходном путь
Стандартные компиляторы/интерпретаторы/инструменты сборки OCaml постоянно не могут найти эти сторонние библиотеки, если они явно не указаны там (например, с помощью ocamlbuild -cflags -I,/usr/local/lib/ocaml
).
ld.conf
перечисляет:
/usr/local/lib/ocaml/stublibs
/usr/local/lib/ocaml
/usr/local/lib/ocaml/site-lib/pcre
что, казалось бы, предполагает, что путь поиска компилятора установлен правильно, но я не знаком с внутренней работой цепочки инструментов.
- Это известная проблема?
- Есть ли способ распечатать пути поиска OCaml, фактически используемые стандартными инструментами?
- Предполагая, что это следствие Homebrew
configure
и процесса установки (т.е. если предположить, что проблема заключается в OCaml, как настроено, предполагая, что его фактический путь к библиотеке/usr/local/Cellar/objective-caml/3.12.0/lib/ocaml
, а не/usr/local/lib/ocaml
), возможно ли принудительно добавить дополнительные пути поиска вне--prefix
во время конфигурация? - Можно ли после установки расширить пути поиска для всей среды (путем редактирования конфигурационных файлов, а не прибегать к возможной переустановке)?