Как ghc разрешает пути для библиотек?
Я начинаю использовать haskell с nixpkgs. Из официального руководства по nixpkgs я прочитал:
GHC ожидает найти все установленные библиотеки в своем собственном каталоге lib.
Как утверждается, кажется, что это говорит о том, что ghc требует, чтобы все библиотеки были установлены по одному пути.
Я думал, что ghc смог найти путь к библиотекам, посмотрев базу данных пакетов, настроенную через ghc-pkg. Если это так, то должно быть возможно поместить библиотеки в разные каталоги в файловой системе и настроить package-db для разрешения этих разных путей. Но это противоречило бы тому, что сказано в вышеупомянутой ссылке, так что я не получаю?
Заранее спасибо за любой ответ.
1 ответ
GHC имеет несколько параметров командной строки, которые позволяют вам манипулировать поиском пакетов:
https://downloads.haskell.org/~ghc/7.10.3/docs/html/users_guide/flag-reference.html
Короче говоря, GHC позволяет вам указывать стек каталогов пакетов (например, путь поиска базы данных пакетов), чтобы вы могли иметь доступ к библиотекам в разных каталогах.