Установка Cabal требует библиотеки C: Windows
Я пытаюсь cabal install yesod
на моей машине Windows. У меня относительно свежая установка платформы Haskell. Не удалось установить cabal, сообщив, что мне нужна библиотека sqlite3 C для установки "persistent", пакета, на который опирается Yesod.
cabal: Missing dependency on a foreign library: * Missing C library: sqlite3
Поэтому я пошел на http://www.sqlite.org/download.html и взял как исходный код C, так и предварительно скомпилированный двоичный файл. Я пытался использовать оба, но безрезультатно:
cabal install persistent --extra-lib-dirs=C:\Path\To\C\Source\Files
cabal install persistent --extra-lib-dirs=C:\Path\To\Binary
В обоих случаях я получил один и тот же результат: это не сработало.:(Что я могу сделать, чтобы дать Cabal библиотеку C, в которой она нуждается? (Sqlite3 в этом случае)
1 ответ
Итак, маска для лица. Мне не нужен был источник, мне не нужен был exe. Мне нужна была DLL.
В разделе "Предварительно скомпилированные двоичные файлы для Windows" на веб-сайте, упомянутом в моем вопросе, я скачал и распаковал zip-файл: sqlite3.def
а также sqlite.dll
, Тогда я использовал
cabal install persistent --extra-lib-dirs=C:\Path\To\DllAndDef
Похоже, что установка успешно завершена. После этого я сделал cabal install yesod
, который также, кажется, успешно завершен.
Я полагаю, если бы я поместил dll где-то волшебным, то мне не пришлось бы использовать --extra-lib-dirs=
вариант.