Я начинаю новый проект, который, мы надеемся, будет использовать gtk2hs. Однако я не могу установить этот пакет на свой довольно типичный Linux-ящик. Вот неисправность:GTK2HS не удается установить с последними версиями cabal
[1 of 2] Compiling SetupWrapper (/tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs, /tmp/cairo-0.12.4-4201/cairo-0.12.4/dist/dist-sandbox-58b5f9c6/setup/SetupWrapper.o)
/tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:94:45:
Ambiguous occurrence `moreRecentFile'
It could refer to either `SetupWrapper.moreRecentFile',
defined at /tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:149:1
or `Distribution.Simple.Utils.moreRecentFile',
imported from `Distribution.Simple.Utils' at /tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:8:1-32
/tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:95:45:
Ambiguous occurrence `moreRecentFile'
It could refer to either `SetupWrapper.moreRecentFile',
defined at /tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:149:1
or `Distribution.Simple.Utils.moreRecentFile',
imported from `Distribution.Simple.Utils' at /tmp/cairo-0.12.4-4201/cairo-0.12.4/SetupWrapper.hs:8:1-32
Failed to install cairo-0.12.4
[1 of 2] Compiling SetupWrapper (/tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs, /tmp/glib-0.12.4-4201/glib-0.12.4/dist/dist-sandbox-58b5f9c6/setup/SetupWrapper.o)
/tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:94:45:
Ambiguous occurrence `moreRecentFile'
It could refer to either `SetupWrapper.moreRecentFile',
defined at /tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:149:1
or `Distribution.Simple.Utils.moreRecentFile',
imported from `Distribution.Simple.Utils' at /tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:8:1-32
/tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:95:45:
Ambiguous occurrence `moreRecentFile'
It could refer to either `SetupWrapper.moreRecentFile',
defined at /tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:149:1
or `Distribution.Simple.Utils.moreRecentFile',
imported from `Distribution.Simple.Utils' at /tmp/glib-0.12.4-4201/glib-0.12.4/SetupWrapper.hs:8:1-32
Failed to install glib-0.12.4
Это, похоже, связано с недавними версиями cabal, так как раньше это использовалось. Кажется, что это известная ошибка (http://trac.haskell.org/gtk2hs/ticket/1292, http://trac.haskell.org/gtk2hs/ticket/1291 и http://trac.haskell.org/gtk2hs/ticket/1289), однако она не двигалась неделями. Я недостаточно компетентен, чтобы предложить хорошее исправление, поэтому я хотел бы получить ваш совет. Это очень раздражает, так как я застрял в этом важном проекте, и мне больно думать, что основной графический интерфейс нашего языка был сломан в течение многих недель.
междусобойчик установить версию 1.18.0.2, используя версию 1.18.1.1 из Кабал библиотеки/GHC 7.4.1
Спасибо за вашу помощь
Вы можете отредактировать 'Setup.hs' и изменить его для использования явного импорта. –
Из вашего сообщения об ошибке видно, что проблема находится в пакете 'cairo', в файле' SetupWrapper.hs', который определяет функцию 'moreRecentFile', но также импортирует функцию с тем же именем из' Distribution.Simple. Utils' (часть библиотеки такси). Предположительно, это новая функция, добавленная в cabal, поскольку пакет 'cairo' был протестирован. [Здесь] (http://www.mail-archive.com/[email protected]/msg01338.html) - это патч, который я нашел с быстрым поиском google; не знаю статус. – jberryman
Спасибо. Действительно, корень проблемы легко исправить. Я никогда не использовал файлы setup.hs, я думаю, это меня смутило. Я, вероятно, займусь этим путем и, возможно, попытаюсь получить этот фиксированный восходящий поток. –