Это вывод из установки cabal codec-image-devil
:
Resolving dependencies...
Configuring Codec-Image-DevIL-0.2.3...
cabal: Missing dependency on a foreign library:
* Missing C library: IL
This problem can usually be solved by installing the system package that
provides this library (you may need the "-dev" version). If the library is
already installed but in a non-standard location then you can use the flags
--extra-include-dirs= and --extra-lib-dirs= to specify where it is.
cabal: Error: some packages failed to install:
Codec-Image-DevIL-0.2.3 failed during the configure step. The exception was:
ExitFailure 1
Я пробовал --extra-include-dirs
и --extra-lib-dirs
. но они не работали. поэтому я отредактировал .cabal в Codec-Image-DevIL-0.2.3.tar.gz
. Я не знаю, должен ли я вообще это изменить. но это работало на pthread
.
Я добавил эти две строки:
include-dirs: C:\Users\Rumbold\Documents\libs\IL\include, C:\Users\Rumbold\Documents\libs\pthread\include, .
extra-lib-dirs: C:\Users\Rumbold\Documents\libs\IL\lib, C:\Users\Rumbold\Documents\libs\pthread\lib, .
Они имеют отступ, поэтому они находятся в разделе Library
. Я не знаю, правильно ли я понял формат списков, просто кое-что, на что я наткнулся при поиске. Я думаю, что файлы libs и `header находятся в правильном месте.
какая-нибудь подсказка, как мне заставить его работать?
Edit_1:
Я получил его для работы с --extra-include-dirs
и --extra-lib-dirs
, поэтому мне больше не нужно редактировать клику. но IL все еще не работает. Есть ли способ узнать, какие файлы он ищет?
Wdit_2:
Хорошо, это работает. Мне пришлось переименовать DevIL.lib
и DevIL.dll
в libIL.lib
и libIL.dll
. (не уверен, что мне нужно было делать то и другое, но я так и сделал. сохранил их под старыми именами)
Edit_3:
Получение множества ошибок, таких как:
"cabal\Codec-Image-DevIL-0.2.3\ghc-6.12.3/libHSCodec-Image-DevIL-0.2.3.a(DevIL.o):fake:(.text+0x2379):
undefined reference to `ilGetInteger@4'"