Gtk2hs выдает ошибку времени выполнения Требуется gtk+ версии 3

Я пишу небольшое приложение, используя gtk2hs, но при запуске приложения получаю следующую ошибку.

требуется gtk+ версии 3.10, текущая версия 2.24

Также я проверил (используя ldd), что приведенная ниже библиотека связана с моим приложением.

libgtk-x11-2.0.so.0 => /lib64/libgtk-x11-2.0.so.0 (0x00000036aee00000)

На моей машине установлена ​​gtk версии 3. Но все же приложение использует версию 2 библиотеки.

/lib64/libgtk-3.so
/lib64/libgtk-3.so.0

Как я могу решить эту проблему? Нужно ли указывать какой-либо аргумент GHC, чтобы связать библиотеку gtk3?


person dfordivam    schedule 25.09.2014    source источник
comment
Вы установили пакет gtk3 в Haskell (а не gtk)?: hackage.haskell.org/package/gtk3   -  person vivian    schedule 25.09.2014


Ответы (1)


Правильное решение упоминается Вивиан. Здесь я добавляю еще пару вещей, которые необходимы для работы приложения.

Сначала установите gtk3

Кабал установить gtk3

Затем укажите, что вы хотите использовать пакет gtk3. (Поскольку приведенная ниже функциональность присутствует как в пакетах «gtk», так и в «gtk3»)

импортировать "gtk3" Graphics.UI.Gtk

и, наконец, скомпилировать с

ghc -XPackageImports файл.hs

person dfordivam    schedule 25.09.2014