Не могу установить sdl2 через cabal

Я пытаюсь установить helm. Однако когда я пытаюсь установить его, я получаю эту ошибку:

$ cabal install helm
Resolving dependencies...
Configuring sdl2-1.1.0...
cabal: The pkg-config package 'sdl2' version >=2.0.3 is required but it could
not be found.
Failed to install sdl2-1.1.0
cabal: Error: some packages failed to install:
helm-0.6.1 depends on sdl2-1.1.0 which failed to install.
sdl2-1.1.0 failed during the configure step. The exception was:
ExitFailure 1

Когда я иду установить sdl2 самостоятельно, я получаю аналогичное сообщение.

$ cabal install sdl2
Resolving dependencies...
Configuring sdl2-1.1.0...
cabal: The pkg-config package 'sdl2' version >=2.0.3 is required but it could
not be found.
Failed to install sdl2-1.1.0
cabal: Error: some packages failed to install:
sdl2-1.1.0 failed during the configure step. The exception was:
ExitFailure 1

Я не понимаю. Согласно Hackage, sdl2 имеет версию 1.1, но для ее установки требуется версия 2.0.3? Я пробовал это в песочнице и вне ее. Результаты ghc-pkg list здесь, если вы считаете, что они актуальны: http://pastebin.com/tFrsfPFe

Кстати, я на Ubuntu.

Помощь?


person asg0451    schedule 07.09.2014    source источник
comment
Это не относится к пакетам cabal / haskell (freedesktop.org/wiki/Software/pkg -config) - пробовали установить пакеты sdl2 с помощью apt-get / synaptic / similar? (Думаю, это должен быть libsdl2-dev или что-то в этом роде)   -  person Random Dev    schedule 07.09.2014
comment
Я установил libsdl2-2.0 что угодно, но не установил libsdl2-dev ... Я только что установил, но apt-get предоставил мне версию 2.0.2, а не 2.0.3. Сейчас обновляю исходники apt-get. Мы увидим. Спасибо!   -  person asg0451    schedule 08.09.2014
comment
Если это не сработает, вы можете скачать версию 2.0.3 здесь: libsdl.org/download-2.0. php   -  person Random Dev    schedule 08.09.2014


Ответы (2)


Еще одна вещь, которая могла случиться (случилась со мной) для других установок, - это то, что переменная PKG_CONFIG_PATH могла не указывать на файл конфигурации пакета (sdl2.pc, для меня в каталоге / usr / local / lib / pkgconfig). pkg-config использует некоторые каталоги по умолчанию ('/ usr / lib / pkgconfig' и '/ usr / share / pkgconfig'), но если файла sdl.pc нет ни в одном из них, вам нужно будет указать каталог в переменной окружения. Вы можете проверить это с помощью echo $PKG_CONFIG_PATH

Если окажется, что вам нужно установить переменную, просто используйте export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig (или в любой каталог, в котором находится ваш файл sdl2.pc)

person B. Elliott    schedule 29.01.2015

Я столкнулся с той же проблемой, и я просто хочу добавить здесь свое решение для записи. Сначала необходимо установить собственные библиотеки sdl2, следуя инструкциям здесь: https://github.com/haskell-game/sdl2#building

person Eric Zoerner    schedule 24.08.2019