#windows #haskell #installation #wxwidgets
#Windows #haskell #установка #wxwidgets
Вопрос:
Я застрял при установке wxHaskell в Windows Xp с пакетом обновления 3
Я установил MinGW, MSYS и wx-config
MinGW и MSYS с установщиком
wx-config с добавлением каталога в переменную окружения WXWIN
и wxWigets с установщиком
когда я набираю
cabal install wx
в нем говорится
generating: src/haskell/Graphics/UI/WXCore/WxcClassTypes.hs
reading class definitions:
parsing: src/include/wxc.h
parsing: src/include/wxc_types.h
parsing: src/include/wxc_glue.h
parsing: src/include/db.h
parsing: src/include/dragimage.h
parsing: src/include/graphicscontext.h
parsing: src/include/sound.h
parsing: src/include/managed.h
parsing: src/include/mediactrl.h
parsing: src/include/previewframe.h
parsing: src/include/printout.h
parsing: src/include/textstream.h
parsing: src/include/stc.h
parsing: src/include/stc_gen.h
generated 539 class definitions.
ok.
generating: src/haskell/Graphics/UI/WXCore/WxcClassInfo.hs
reading class definitions:
parsing: src/include/wxc.h
parsing: src/include/wxc_types.h
parsing: src/include/wxc_glue.h
parsing: src/include/db.h
parsing: src/include/dragimage.h
parsing: src/include/graphicscontext.h
parsing: src/include/sound.h
parsing: src/include/managed.h
parsing: src/include/mediactrl.h
parsing: src/include/previewframe.h
parsing: src/include/printout.h
parsing: src/include/textstream.h
parsing: src/include/stc.h
parsing: src/include/stc_gen.h
generated 381 class info definitions
ok.
parsing: src/include/wxc.h
parsing: src/include/wxc_types.h
parsing: src/include/wxc_glue.h
parsing: src/include/db.h
parsing: src/include/dragimage.h
parsing: src/include/graphicscontext.h
parsing: src/include/sound.h
parsing: src/include/managed.h
parsing: src/include/mediactrl.h
parsing: src/include/previewframe.h
parsing: src/include/printout.h
parsing: src/include/textstream.h
parsing: src/include/stc.h
parsing: src/include/stc_gen.h
ignore: parse error : //WXCOLORREF wxColour_GetPixel( TSelf(wxColour) _obj );
generating: src/haskell/Graphics/UI/WXCore/WxcClassesAL.hs
reading class definitions:
parsing: src/include/wxc.h
parsing: src/include/wxc_types.h
parsing: src/include/wxc_glue.h
parsing: src/include/db.h
parsing: src/include/dragimage.h
parsing: src/include/graphicscontext.h
parsing: src/include/sound.h
parsing: src/include/managed.h
parsing: src/include/mediactrl.h
parsing: src/include/previewframe.h
parsing: src/include/printout.h
parsing: src/include/textstream.h
parsing: src/include/stc.h
parsing: src/include/stc_gen.h
generated 1560 methods for 120 classes.
generating: src/haskell/Graphics/UI/WXCore/WxcClassesMZ.hs
generated 2184 methods for 123 classes.
generating: src/haskell/Graphics/UI/WXCore/WxcClasses.hs
generated 3744 total methods for 243 total classes.
ok.
parsing: src/eiffel/wxc_defs.e
parsing: src/eiffel/wx_defs.e
parsing: src/eiffel/stc.e
generating: src/haskell/Graphics/UI/WXCore/WxcDefs.hs
generated 2454 constant definitions
ok.
Please use the --prefix flag (as in wx-config --prefix=C:wxWidgets)
or set the environment variable WXWIN (as in WXWIN=C:wxWidgets)
to specify where is your installation of wxWidgets.
setup.exe: failed
cabal: Error: some packages failed to install:
wx-0.12.1.6 depends on wxcore-0.12.1.6 which failed to install.
wxcore-0.12.1.6 failed during the configure step. The exception was:
ExitFailure 1
справка ~
Спасибо!
Комментарии:
1. Можете ли вы
cabal install wxcore
затем сослаться на ошибку сборки?2. когда я cabal устанавливаю wxcore, он сообщает, что wxcore-0.12.1.6 не удался на этапе настройки. исключением было: ошибка выхода 1 большое спасибо за ваш ответ
3. Я полагаю, вы немного вырезали сообщение об ошибке. Не могли бы вы отредактировать все сообщение об ошибке, особенно вверху (именно там происходит настройка), и отредактировать его в исходном сообщении?
4. спасибо, я добавил сообщение об ошибке целиком
Ответ №1:
Есть ли у вас wx-config.exe где-нибудь в вашей переменной PATH environmnet, чтобы cabal мог ее найти?
Кроме того, вы могли бы попытаться определить переменную среды WXCFG=gcc_dll mswu.
И в качестве последней попытки: скомпилировали ли вы wxWidgets с правильными настройками (например, так: mingw32-make -f makefile.gcc BUILD=release MONOLITHIC=1 SHARED=1 UNICODE=1
)?
Это все, что у меня есть. У меня были похожие проблемы, но я просто не совсем следовал руководству по установке, так что, возможно, вы что-то пропустили.
Комментарии:
1. Я создал скрипт для загрузки / настройки wxWidgets и MinGW для сборки wxHaskell в Windows 7. Смотрите github.com/cessationoftime/wxHaskell-Windows-Builder
Ответ №2:
Я думаю, что вам, в частности, не хватает переменной среды WXWIN, указанной в этом сообщении об ошибке. Если вы знаете, как устанавливать переменные среды в Windows (я полагаю, это связано со свойствами системы, но вы можете посмотреть это в Интернете), установите WXWIN в каталог wxWidgets, что-то вроде C:wxWidgets-2.8
Затем попробуйте cabal install wxcore
еще раз
Возможно, будет полезно ознакомиться с этим руководством:http://www.haskell.org/haskellwiki/WxHaskell/Building
Примечание: Я еще не пытался собрать wxHaskell в Windows, но большинство других пользователей wxHaskell, похоже, работают в Windows, поэтому я думаю, что это должно быть возможно!
Редактировать: Извините! Я заметил, что вы упоминаете переменную среды WXWIN в своей публикации, поэтому я не уверен, в чем именно проблема. Может быть полезно выполнить echo %WXWIN% в cmd.exe чтобы убедиться, что он установлен правильно. Обратите также внимание, что по какой-то причине вам необходимо запустить cabal install wx в cmd.exe и не в оболочке msys
Ответ №3:
Я обнаружил, что это было немного хлопотно, и, попробовав несколько предложений из различных веб-сообщений, заставил это работать. Возможно, это не оптимальный путь, но после многих перестановок и вращений я был просто рад заставить его работать.
установите wx-config — http://wiki.wxwidgets.org/Wx-Config
— http://sites.google.com/site/wxconfig/
Установить двоичный файл wxPack — http://wxpack.sourceforge.net / — http://sourceforge.net/projects/wxpack /
установите wxWidgets (двоичный файл Windows) (входит в wxPack)
копировать wxmsw28u_gcc.dll
из: ../libraries/wxWidgets/lib/gcc_dll/ кому: c:/windows/system
установите wxhaskell — http://haskell.org/haskellwiki/WxHaskell
— http://haskell.org/haskellwiki/WxHaskell/Download
— http://downloads.sourceforge.net/wxhaskell/wxhaskell-bin-msw2.8.10-ghc6.10.4-0.11.1.2-0.zip
определите переменную окружения WXCFG=gcc_dllmswu (и убедитесь, что wxwin находится в PATH)
cabal установить wx wxcore
При использовании Leksah; также перестройте системные данные, а также перенастроьте и соберите проект (ы).