Не могу установить Fay на Mac OS X Mavericks
Я пытаюсь cabal install fay fay-base
, Но это не удается, вот журнал:
$ cabal install fay fay-base
Resolving dependencies...
Configuring pretty-show-1.6.3...
Building pretty-show-1.6.3...
Preprocessing library pretty-show-1.6.3...
[1 of 6] Compiling Paths_pretty_show ( dist/build/autogen/Paths_pretty_show.hs, dist/build/Paths_pretty_show.o )
[2 of 6] Compiling Text.Show.Value ( Text/Show/Value.hs, dist/build/Text/Show/Value.o )
[3 of 6] Compiling Text.Show.PrettyVal ( Text/Show/PrettyVal.hs, dist/build/Text/Show/PrettyVal.o )
[4 of 6] Compiling Text.Show.Html ( Text/Show/Html.hs, dist/build/Text/Show/Html.o )
Text/Show/Html.hs:106:1: Warning: Defined but not used: `tallTuple'
[5 of 6] Compiling Text.Show.Parser ( dist/build/Text/Show/Parser.hs, dist/build/Text/Show/Parser.o )
[6 of 6] Compiling Text.Show.Pretty ( Text/Show/Pretty.hs, dist/build/Text/Show/Pretty.o )
[1 of 6] Compiling Paths_pretty_show ( dist/build/autogen/Paths_pretty_show.hs, dist/build/Paths_pretty_show.p_o )
clang: warning: argument unused during compilation: '-nodefaultlibs'
[2 of 6] Compiling Text.Show.Value ( Text/Show/Value.hs, dist/build/Text/Show/Value.p_o )
clang: warning: argument unused during compilation: '-nodefaultlibs'
[3 of 6] Compiling Text.Show.PrettyVal ( Text/Show/PrettyVal.hs, dist/build/Text/Show/PrettyVal.p_o )
clang: warning: argument unused during compilation: '-nodefaultlibs'
[4 of 6] Compiling Text.Show.Html ( Text/Show/Html.hs, dist/build/Text/Show/Html.p_o )
Text/Show/Html.hs:106:1: Warning: Defined but not used: `tallTuple'
clang: warning: argument unused during compilation: '-nodefaultlibs'
[5 of 6] Compiling Text.Show.Parser ( dist/build/Text/Show/Parser.hs, dist/build/Text/Show/Parser.p_o )
clang: warning: argument unused during compilation: '-nodefaultlibs'
[6 of 6] Compiling Text.Show.Pretty ( Text/Show/Pretty.hs, dist/build/Text/Show/Pretty.p_o )
clang: warning: argument unused during compilation: '-nodefaultlibs'
In-place registering pretty-show-1.6.3...
Preprocessing executable 'ppsh' for pretty-show-1.6.3...
[1 of 1] Compiling Main ( bin/ppsh.hs, dist/build/ppsh/ppsh-tmp/Main.o )
Linking dist/build/ppsh/ppsh ...
Running Haddock for pretty-show-1.6.3...
Preprocessing library pretty-show-1.6.3...
Haddock coverage:
0% ( 0 / 8) in 'Paths_pretty_show'
100% ( 3 / 3) in 'Text.Show.Value'
50% ( 1 / 2) in 'Text.Show.PrettyVal'
dist/build/tmp-6355/Text/Show/Html.hs:106:1: Warning:
Defined but not used: `tallTuple'
71% ( 5 / 7) in 'Text.Show.Html'
0% ( 0 / 2) in 'Text.Show.Parser'
81% ( 21 / 26) in 'Text.Show.Pretty'
Documentation created: dist/doc/html/pretty-show/index.html
Preprocessing executable 'ppsh' for pretty-show-1.6.3...
Installing library in
/Users/arthurfayzrakhmanov/Library/Haskell/ghc-7.6.3/lib/pretty-show-1.6.3/lib
Installing executable(s) in
/Users/arthurfayzrakhmanov/Library/Haskell/ghc-7.6.3/lib/pretty-show-1.6.3/bin
Warning: The directory
/Users/arthurfayzrakhmanov/Library/Haskell/ghc-7.6.3/lib/pretty-show-1.6.3/bin
is not in the system search path.
Registering pretty-show-1.6.3...
Installed pretty-show-1.6.3
Configuring type-eq-0.4...
Building type-eq-0.4...
Preprocessing library type-eq-0.4...
[1 of 7] Compiling Type.Eq.Higher[boot] ( Type/Eq/Higher.hs-boot, dist/build/Type/Eq/Higher.o-boot )
[2 of 7] Compiling Type.Eq[boot] ( Type/Eq.hs-boot, dist/build/Type/Eq.o-boot )
[3 of 7] Compiling Type.Eq.Unsafe ( Type/Eq/Unsafe.hs, dist/build/Type/Eq/Unsafe.o )
[4 of 7] Compiling Type.Eq.Higher.Unsafe ( Type/Eq/Higher/Unsafe.hs, dist/build/Type/Eq/Higher/Unsafe.o )
[5 of 7] Compiling Type.Eq ( Type/Eq.hs, dist/build/Type/Eq.o )
[6 of 7] Compiling Type.Eq.Higher ( Type/Eq/Higher.hs, dist/build/Type/Eq/Higher.o )
Type/Eq/Higher.hs:72:86:
Illegal literal in type (use -XDataKinds to enable): 1
Failed to install type-eq-0.4
Updating documentation index
/Users/arthurfayzrakhmanov/Library/Haskell/doc/index.html
cabal: Error: some packages failed to install:
fay-0.18.1.3 depends on type-eq-0.4 which failed to install.
fay-base-0.18.0.0 depends on type-eq-0.4 which failed to install.
haskell-names-0.3.2.4 depends on type-eq-0.4 which failed to install.
type-eq-0.4 failed during the building phase. The exception was:
ExitFailure 1
Пожалуйста помоги.
3 ответа
Решение
Наконец, я сделал это так:
- удалил всю платформу с
sudo /Library/Haskell/bin/uninstall-hs
( /questions/12626150/vezde-gde-ustanovlena-platforma-ghchaskell/12626176#12626176) - затем, следуя этому руководству, сначала установил apple-gcc42 через
brew install apple-gcc42
- затем связал это
brew link apple-gcc42
- установленная платформа через
brew install haskell-platform
cabal update
cabal install cabal-install
- добавлено в PATH
$HOME/.cabal/bin
(вместо$HOME/Library/Haskell/bin
в случае, когда платформа установлена через установщик PKG отсюда, очевидно, потому чтоbrew
делает немного разные конфигурации). source ~/.bash_profile
, затем перезапустить терминал, такwhich cabal
указывает на<HOME>/.cabal/bin/cabal
, а такжеcabal --version
показывает 1,18 (не 1,16).cabal install happy
, В этот момент я перезапустил терминал еще раз, потому чтоwhich happy
указывает на локальную обновленную (1.19.2) версию, ноhappy --version
показал 1.16.х.cabal install type-eq
- УСПЕШНО с первого раза!в конце концов,
cabal install fay fay-base
- УСПЕШНО!Installed fay-0.18.1.3 Installed fay-base-0.18.0.0
Уф! Спасибо вам всем!
Это известная проблема препроцессора на Mavericks. Ищите здесь решение.
Причины, по которым это похоже на проблему препроцессора:
- Строка, упомянутая в сообщении об ошибке, содержит макрос CPP.
- Существует известная проблема с CPP на Маверикс
- Пакет прекрасно компилируется с GHC 7.6.3 (который также выглядит как версия, которую вы используете) здесь, в Linux
Все, что вам нужно сделать, это добавить каталог установки cabal в ваш путь! Просто добавьте это в ваш.bash_profile: export PATH = "$ HOME / Library / Haskell / bin: $ PATH"
export PATH = "$ HOME / Library / Haskell / bin: $ PATH"
Я собирался удалить всю платформу, но потом обнаружил, что это работает на Mavericks.