Стек неподдерживаемой версии

Я пытаюсь собрать libssh2-hs со стеком (lts-3.20), и я получаю некоторые ошибки:

$ stack build
No compiler found, expected minor version match with ghc-7.10.2 (x86_64-ncurses6) (based on resolver setting in /home/black/programmation/haskell/libssh2-hs/stack.yaml).
To install the correct GHC into /home/black/.stack/programs/x86_64-linux/, try running "stack setup" or use the "--install-ghc" flag.
$ stack setup
No information found for ghc-7.10.2.
Supported versions for OS key 'linux64-ncurses6': GhcVersion 7.10.3, GhcVersion 8.0.1, GhcVersion 8.0.2

Я использую archlinux 64 бит, что здесь происходит и что я могу сделать?

1 ответ

Решение

Источник проблемы намекается на это сообщение об ошибке:

No information found for ghc-7.10.2.
  Supported versions for OS key 'linux64-ncurses6': GhcVersion 7.10.3, GhcVersion 8.0.1, GhcVersion 8.0.2

Arch Linux предоставляет по умолчанию libncurses6, в то время как стандартные сборки GHC ожидают libncurses5/libtinfo5. Стек может извлекать альтернативные сборки GHC, использующие libncurses6; однако они доступны только начиная с GHC 7.10.3, что объясняет, почему у вас возникла эта проблема со снимком, который использует GHC 7.10.2. Следующее предложение, взятое из проблемы стека # 3177, должно решить эту проблему:

Установите ncurses5-compat-libs из AUR, а затем вынудите Stack использовать стандартный связыватель GHC, выполнив что-то вроде stack --ghc-build=standard setup,

(Обратите внимание, что --ghc-build=standard может не понадобиться - если я правильно помню, когда я столкнулся с этой проблемой несколько месяцев назад stack setup обнаружил соответствующую сборку GHC после того, как я установил ncurses5-compat-libs, без необходимости указывать это явно.)

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