macos - как указать cabal / ghc искать в / opt библиотеки / включаемые файлы? - PullRequest
2 голосов
/ 25 февраля 2012

У меня установлена ​​библиотека pcre через порты в /opt.

Я пытаюсь установить pcre-light, но cabal install pcre-light сообщает:

Resolving dependencies...
Configuring pcre-light-0.4...
Preprocessing library pcre-light-0.4...
Base.hsc:103:18: error: pcre.h: No such file or directory
...

pcre.h находится в / opt / local / include

Обновление: у меня возникли проблемы с подключением к библиотеке pcre, предоставленной macports, поэтому я переключился на использование home brew.

1 Ответ

4 голосов
/ 25 февраля 2012

http://www.haskell.org/ghc/docs/7.0.2/html/Cabal/builders.html

- extra-include-dirs [= dir] Дополнительный каталог для поиска файлов заголовков C.Вы можете использовать этот флаг несколько раз, чтобы получить список каталогов.

Возможно, вам понадобится использовать этот флаг, если у вас есть стандартные системные заголовочные файлы в нестандартном расположении, которое не упомянуто в файле .cabal пакета,Использование этого параметра имеет тот же эффект, что и добавление каталога dir в поле include-dirs каждой библиотеки и исполняемый файл в файле пакета .cabal.Преимущество, конечно, в том, что вам не нужно изменять пакет вообще.Эти дополнительные каталоги будут использоваться при сборке пакета, а для библиотек они также сохраняются в регистрационной информации пакета и используются при компиляции модулей, использующих библиотеку.

...