Ошибка при установке hspec кабала

Я пытаюсь установить hspec, но получаю следующее:

$ cabal install hspec
Resolving dependencies...                                                                                                                                               
cabal: dependencies conflict: ghc-7.2.2 requires containers ==0.4.2.0 however                                                                                           
containers-0.4.2.0 was excluded because ghc-7.2.2 requires containers                                                                                                   
==0.4.1.0                                                  

Что это вообще значит?

Кроме того, используя ghc 7.2.2, cabal 10.2.


person Clark Gaebel    schedule 09.02.2012    source источник
comment
Каков результат ghc-pkg check?   -  person dflemstr    schedule 12.02.2012
comment
Предупреждение: интерфейсы хэддоков: /home/clark/.cabal/share/doc/InternalLibrary4-0.2/html/InternalLibrary4.haddock не существует или не является файлом Предупреждение: хэддок-html: /home/clark/.cabal /share/doc/InternalLibrary4-0.2/html не существует или не является каталогом Предупреждение: include-dirs: /usr/include/libpng14 не существует или не является каталогом Предупреждение: include-dirs: /usr /include/libpng14 не существует или не является каталогом Предупреждение: include-dirs: /usr/include/libpng14 не существует или не является каталогом   -  person Clark Gaebel    schedule 12.02.2012


Ответы (1)


Похоже, вы каким-то образом сломали установку GHC. GHC 7.2.2 поставляется с container-0.4.1.0 (версия которого такая же, как и для GHC 7.2.1). Возможно это можно исправить, но если глобальная установка пакета нарушена, вероятно, проще всего будет переустановить GHC.

Что говорит ghc-pkg list containers?

Если containers-0.4.2.2 обнаруживается только при установке для каждого пользователя (т. е. вывод /home/clark/.ghc/${arch}-${os}-7.2.2/package.conf.d), то rm установка /home/clark/.ghc/ и переустановка всех пакетов, установленных с помощью cabal install, исправит это.

person ivanm    schedule 12.02.2012
comment
Выход ghc-pkg list containers => /usr/lib/ghc-7.2.2/package.conf.d containers-0.4.1.0 /home/clark/.ghc/x86_64-linux-7.2.2/package.conf.d containers-0.4.2.0 - person Clark Gaebel; 12.02.2012
comment
@ClarkGaebel: так что вы можете попробовать ghc-pkg отменить регистрацию контейнеров-0.4.2.0 и посмотреть, исправит ли это проблему. - person ivanm; 12.02.2012
comment
В нем говорится, что если бы я это сделал, то сломало бы огромное количество пакетов. Должен ли я -- заставить его? - person Clark Gaebel; 13.02.2012
comment
@ClarkGaebel Да, затем перестройте эти пакеты. Вам никогда не следует обновлять загрузочные библиотеки, поставляемые с GHC (базовые, контейнеры, массивы, байтовые строки и т. д.; Cabal — единственная библиотека, поставляемая с GHC, которую вы можете безопасно установить более новой версией параллельно ). - person ivanm; 14.02.2012
comment
Я только что сделал полную установку своей системы (rm -rf .ghc .cabal), переустановил все. Оказывается, благодаря недавнему обновлению хэш-карты было установлено две версии контейнеров. Спасибо за вашу помощь! Имейте щедрость. - person Clark Gaebel; 14.02.2012