Я не могу получить файлы данных, которые должны быть упакованы в каббале. Каталог, созданный с помощью getDataFileName
, не существует после установки пакета.getDataFileName возвращает несуществующий каталог
Main.hs:
module Main (
main
) where
import Paths_mypackage
main = do file <- getDataFileName "mydata.txt"
putStrLn file
print =<< readFile file
mypackage.cabal (генерируется Leksah после просмотра файла):
data-files: /Users/peter/Documents/haskell/mypackage/data/mydata.txt
mydata-dir: ""
Выходные:
mypackage: /Users/peter/.cabal/share/mypackage-0.0.1/mydata.txt: openFile: does not exist (No such file or directory)
/Users/peter/.cabal/share/mypackage-0.0.1/mydata.txt
В файле .cabal не использовать абсолютные пути. Все файлы данных должны находиться под каталогом пакетов и обозначаться относительными путями. –
Ах, я должен был упомянуть, файл такси генерируется Лексахом. Я добавлю это к сообщению (и я попытаюсь отредактировать его вручную, чтобы проверить, работает ли он таким образом). –
Нет, это не помогло. Каталог '~/.cabal/share/mypackage-0.0.1 /' все еще не существует. –