GHC не может найти библиотеки при новой установке Haskell-Platform

Я пытаюсь научиться использовать Haskell, но я столкнулся с небольшим препятствием. Я использую MacOSX 10.12.6 и установил платформу Haskell, используя:

$ brew cask install haskell-platform

без изменений. Когда я пытаюсь скомпилировать программу с parsec импортированный, Haskell-Platform не может найти его:

$ ghc -v test.hs 
...
package parsec-3.1.11-DPgnR92AWEaFOaixmwipet is unusable due to shadowed dependencies:
mtl-2.2.1-19EL8AGBsN3DnnOhrC9xY3 text-1.2.2.2-EGUst8sqNAZCw1xLPcmcMH
...
test.hs:2:1: error:
    Could not find module ‘Text.Parsec’
    Locations searched:
    Text/Parsec.hs
    Text/Parsec.lhs
    Text/Parsec.hsig
    Text/Parsec.lhsig
|
2 | import Text.Parsec
| ^^^^^^^^^^^^^^^^^^

parsec установлен:

$ ghc-pkg list | grep -e 'parsec'
attoparsec-0.13.2.0
parsec-3.1.11

Итак, у меня есть несколько вопросов:

  • Что это означает под теневыми зависимостями?
  • Где GHC ищет библиотеки?
  • Где GHC ищет пользовательские библиотеки по сравнению с общесистемными библиотеками?
  • Можно ли изменить этот путь?

1 ответ

Произошла ошибка в сборках бинарной платформы 8.2.1, и была выпущена новая версия, чтобы исправить возникшую проблему.

Подробная информация об ошибке и новом выпуске предоставлена ​​по адресу https://mail.haskell.org/pipermail/haskell-cafe/2017-October/127979.html

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