2014-10-09 3 views
7

Моя установка ghc устарела, поэтому я решил переустановить ghc и cabal, чтобы, надеюсь, исправить некоторые проблемы. Я начал с шагов here. Теперь GHC - версия 7.8.3.У установки Cabal отсутствуют модули

Затем я удалил файл ~/.cabal и попытался установить его с помощью шагов, но он не прошел. Так что я удалил .cabal снова и попытался шаги here, но когда я бегу sh bootstrap.sh он работает в недостающих модулей:

Using local tarball for parsec-3.1.6. 
[1 of 1] Compiling Main    (Setup.hs, Setup.o) 
Linking Setup ... 
Configuring parsec-3.1.6... 
Building parsec-3.1.6... 
Preprocessing library parsec-3.1.6... 

Text/Parsec/Prim.hs:80:8: 
Could not find module ‘Control.Monad.Trans’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Prim.hs:81:8: 
Could not find module ‘Control.Monad.Identity’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Prim.hs:83:8: 
Could not find module ‘Control.Monad.Reader.Class’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Prim.hs:84:8: 
Could not find module ‘Control.Monad.State.Class’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Prim.hs:85:8: 
Could not find module ‘Control.Monad.Cont.Class’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Prim.hs:86:8: 
Could not find module ‘Control.Monad.Error.Class’ 
There are files missing in the ‘mtl-2.2.1’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Text.hs:19:18: 
Could not find module ‘Data.Text’ 
There are files missing in the ‘text-1.2.0.0’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Text/Parsec/Text/Lazy.hs:19:18: 
Could not find module ‘Data.Text.Lazy’ 
There are files missing in the ‘text-1.2.0.0’ package, 
try running 'ghc-pkg check'. 
Use -v to see a list of the files searched for. 

Error during cabal-install bootstrap: 
Building the parsec package failed. 

Когда я бегу ghc-pkg check я получаю завалил так:

cannot find any of ["libHSOpenGLRaw-1.5.0.0.a","libHSOpenGLRaw-1.5.0.0.p_a","libHSOpenGLRaw-1.5.0.0-ghc7.8.3.so","libHSOpenGLRaw-1.5.0.0-ghc7.8.3.dylib","HSOpenGLRaw-1.5.0.0-ghc7.8.3.dll"] on library path 
Warning: haddock-interfaces: /usr/local/share/doc/x86_64-linux-ghc-7.8.3/Cabal-1.21.1.0/html/Cabal.haddock doesn't exist or isn't a file 
Warning: haddock-html: /usr/local/share/doc/x86_64-linux-ghc-7.8.3/Cabal-1.21.1.0/html doesn't exist or isn't a directory 

а затем это:

The following packages are broken, either because they have a problem 
listed above, or because they depend on a broken package. 
text-1.1.0.1 
Cabal-1.20.0.2 
zlib-0.5.4.1 
contravariant-1.2 
void-0.6.1 
netwire-5.0.0 
semigroups-0.15.3 
unordered-containers-0.2.5.0 
transformers-compat-0.3.3.4 
exceptions-0.6.1 
MonadRandom-0.3 
mtl-2.2.1 
transformers-0.4.1.0 
cpphs-1.18.5 
polyparse-1.9 
nats-0.2 
hashable-1.2.2.0 
OpenGL-2.9.2.0 
text-1.2.0.0 
tagged-0.7.2 
stb-image-0.2.1 
split-0.2.2 
reflection-1.5.1 
random-1.0.1.1 
primitive-0.5.3.0 
prelude-extras-0.4 
parallel-3.2.0.4 
bitmap-0.0.2 
bindings-DSL-1.0.21 
GLURaw-1.4.0.1 
OpenGLRaw-1.5.0.0 
+0

Что произойдет, если вы запустите 'ghc-pkg check', как было предложено? –

+0

@GaneshSittampalam обновленный вопрос с выходом ghc-pkg check –

+0

Сначала очистите пакеты ghc. В любом случае, работа в песочницах является самым надежным способом, глобальные пакеты, как правило, ломаются. –

ответ

7

Вы можете использовать ghc-pkg unregister на каждом из сломанных пакетов, чтобы очистить их должным образом, о r возможно сдуть всю папку ~/.ghc и начать снова. Возможно, вам придется использовать --force, чтобы избежать необходимости уважать порядок зависимостей пакетов.

+0

Я думаю, он также должен удалить свою папку .cabal перед тем, как начать работу над – Arnon

+0

Я не удалял свой .ghc-каталог. Чтобы быть ясным, мне нужно удалить .ghc и .cabal, а затем переустановить ghc и cabal или просто удалить эти dir и установить cabal? –

+1

удален .ghc и .cabal и снова попробовали, камера установлена ​​и обновлена. Спасибо Ганешу. –

3

Вы также удалили ~/.ghc, когда вы удалили ~/.cabal? Если нет, я предлагаю вам попробовать это, поскольку, если я правильно понимаю, первый может содержать ссылки на пакеты, установленные во втором.

Смежные вопросы