2012-04-02 2 views
5

Я установил gtk2hs-инструмент сборки без проблем, но вот выход, когда я пытаюсь установить GTK с помощью «междусобойчик установить GTK»:Установка gtk2hs

 
[[email protected] ~]$ cabal install gtk 
Resolving dependencies... 
[1 of 2] Compiling SetupWrapper  (/tmp/cairo-0.12.213784/cairo-0.12.2/SetupWrapper.hs, /tmp/cairo-0.12.213784/cairo-0.12.2/dist/setup/SetupWrapper.o) 
[2 of 2] Compiling Main    (/tmp/cairo-0.12.213784/cairo-0.12.2/Setup.hs, /tmp/cairo-0.12.213784/cairo-0.12.2/dist/setup/Main.o) 
Linking /tmp/cairo-0.12.213784/cairo-0.12.2/dist/setup/setup ... 
[1 of 2] Compiling Gtk2HsSetup  (Gtk2HsSetup.hs, dist/setup-wrapper/Gtk2HsSetup.o) 
[2 of 2] Compiling Main    (SetupMain.hs, dist/setup-wrapper/Main.o) 
Linking dist/setup-wrapper/setup ... 
Cannot find gtk2hsC2hs 
Please install `gtk2hs-buildtools` first and check that the install directory is in your PATH (e.g. HOME/.cabal/bin). 
[1 of 2] Compiling SetupWrapper  (/tmp/glib-0.12.213784/glib-0.12.2/SetupWrapper.hs, /tmp/glib-0.12.213784/glib-0.12.2/dist/setup/SetupWrapper.o) 
[2 of 2] Compiling Main    (/tmp/glib-0.12.213784/glib-0.12.2/Setup.hs, /tmp/glib-0.12.213784/glib-0.12.2/dist/setup/Main.o) 
Linking /tmp/glib-0.12.213784/glib-0.12.2/dist/setup/setup ... 
[1 of 2] Compiling Gtk2HsSetup  (Gtk2HsSetup.hs, dist/setup-wrapper/Gtk2HsSetup.o) 
[2 of 2] Compiling Main    (SetupMain.hs, dist/setup-wrapper/Main.o) 
Linking dist/setup-wrapper/setup ... 
Cannot find gtk2hsC2hs 
Please install `gtk2hs-buildtools` first and check that the install directory is in your PATH (e.g. HOME/.cabal/bin). 
cabal: Error: some packages failed to install: 
cairo-0.12.2 failed during the configure step. The exception was: 
ExitFailure 1 
gio-0.12.2 depends on glib-0.12.2 which failed to install. 
glib-0.12.2 failed during the configure step. The exception was: 
ExitFailure 1 
gtk-0.12.2 depends on glib-0.12.2 which failed to install. 
pango-0.12.2 depends on glib-0.12.2 which failed to install. 
[[email protected] ~]$ 

Эта проблема возникает как на моем Mac и в моем Fedora VM. Кто-нибудь знает, как это исправить? Благодаря!

+2

Является ли '$ HOME/.cabal/bin' в вашей' $ PATH'? –

ответ

10

Необходимо добавить путь, в котором инструменты сборки Gtk2Hs хранятся в переменной среды $PATH, чтобы процесс сборки мог их найти. В Linux это $HOME/.cabal/bin. В OS X это $HOME/Library/Haskell/bin (хотя это может быть просто, если вы используете платформу Haskell - если это не сработает, попробуйте $HOME/.cabal/bin).

Чтобы добавить каталог в ваш $PATH, запустите export PATH=directory:$PATH. Вероятно, вы должны добавить это в файл запуска вашей оболочки (это зависит от вашей оболочки и ОС - возможно, либо ~/.bashrc, ~/.profile или ~/.bash_profile). (Вам нужно будет сделать это, если вы хотите запустить любые программы, которые вы устанавливаете с помощью cabal, в любом случае.)

+0

Спасибо за объяснение. Я добавил $ Home/cabal/bin в мой $ PATH в Fedora, но это не устранило проблему. Где ~/.profile и ~/.bash_profile и как их редактировать? – Gautam

+0

Ничего, я заработал. Благодаря! – Gautam

+1

Обратите также внимание: убедитесь, что вы используете '$ HOME/.cabal/bin', а не' ~/.cabal/bin', или он не будет работать. – ivanm