Я пытался установить пакет реактивного банана в Windows, но без особого успеха. Кажется, он знает о пакетах, но не работает при установке. Любые подсказки?
>cabal install Reactive
Resolving dependencies...
...
cabal: Error: some packages failed to install:
category-extras-0.53.5 failed during the building phase. The exception was:
ExitFailure 1
reactive-0.11.5 depends on category-extras-0.53.5 which failed to install.
>cabal install category-extras
Resolving dependencies...
Configuring category-extras-0.53.5...
...
cabal: Error: some packages failed to install:
category-extras-0.53.5 failed during the building phase. The exception was:
ExitFailure 1
>cabal install reactive-banana-wx
Resolving dependencies...
Downloading monads-tf-0.1.0.0...
Warning: monads-tf.cabal: A package using 'cabal-version: >=1.2.3' must use
section syntax. See the Cabal user guide for details.
...
setup.exe: wx-config: does not exist
cabal: Error: some packages failed to install:
reactive-banana-wx-0.3.0.1 depends on wxcore-0.12.1.7 which failed to install.
wx-0.12.1.6 depends on wxcore-0.12.1.7 which failed to install.
wxcore-0.12.1.7 failed during the configure step. The exception was:
ExitFailure 1
etc...
Хорошо, я установил все wx-материалы - сделал несколько шагов. wx-config, затем wxWidgets, затем установите части Haskell (wx, wxcore, reactive-banana.wx). Но базовый Reactive и дополнительные категории по-прежнему терпят неудачу, как указано выше. - шаг 39 из 99 категории-дополнительно не выполняется:
[39 of 99] Compiling Control.Monad.Either ( src\Control\Monad\Either.hs, dist\bu
ild\Control\Monad\Either.o )
src\Control\Monad\Either.hs:44:10:
Duplicate instance declarations:
instance Monad (Either e)
-- Defined at src\Control\Monad\Either.hs:44:10-25
instance Monad (Either e) -- Defined in Control.Monad.Instances
src\Control\Monad\Either.hs:49:10:
Duplicate instance declarations:
instance Applicative (Either e)
-- Defined at src\Control\Monad\Either.hs:49:10-31
instance Applicative (Either e) -- Defined in Control.Applicative
src\Control\Monad\Either.hs:53:10:
Duplicate instance declarations:
instance MonadFix (Either e)
-- Defined at src\Control\Monad\Either.hs:53:10-28
instance MonadFix (Either e) -- Defined in Control.Monad.Fix
cabal: Error: some packages failed to install:
category-extras-0.53.5 failed during the building phase. The exception was:
ExitFailure 1
Обновление:
Я нахожу вселенную Wx для Haskell немного запутанной. Существует множество заметок по этому поводу и описаний проблем с wx и wxHaskell в Windows, в некоторых предложениях требуются старые версии GHC и т. д. Код не совместим с текущими компиляторами MSoft, поэтому требуется установка других компиляторов и т. д. В целом довольно разочаровывает меня после нескольких часов тыкания в него. Я установил wx-config, wxPack, wxWidgets, затем wxHaskell, а затем из cabal wx & wxcore; все сообщил об успехе - все равно не получилось (wxmsw28_gcc.dll не найден, хотя в библиотеке есть). Их первоначальные тесты (образцы/контроли...) терпят неудачу. Все ссылки на примеры и многие другие не работают на страницах wxWidgets и wxHaskell. После перезагрузки (?!) он, кажется, запускает некоторые тесты, так что теперь я надеюсь на успех.
Я надеялся на волшебный опыт установки apt-get.
Для FRP -- Примеры FRP (в лексах) дают массу: Ссылки назначения не найдены для... сообщений об ошибках, но пока что запускаются.
В целом, по моему опыту, кажется, что wxHaskell и FRP не очень просты в использовании в Windows. Определенно не то, что я бы назначил классу, чтобы попробовать в качестве хорошего примера простоты и полезности Haskell! :-)
Я ценю всю сложность и работу, связанную с этими пакетами, и не хочу жаловаться - просто отчет об опыте. Возможно, пакеты wxHaskell широко не используются или ..??