EclipseFG не ищет установленные пользователем модули

Я только что установил EclipseFP и сейчас пытаюсь загрузить модуль в GHCi. Проблема в том, что GHCi не загружает библиотеки, установленные cabal, на которые ссылается мой модуль. После того, как я установил -v в GHCi и запустил:r, похоже, что GHCi ищет только библиотеки, установленные глобально, а не библиотеки, установленные для локального пользователя:

Could not find module `Text.ParserCombinators.Parsec'
There are files missing in the `parsec-3.1.3' package,
try running 'ghc-pkg check'.
Locations searched:
  Text/ParserCombinators/Parsec.hs
  Text/ParserCombinators/Parsec.lhs
  /Library/Haskell/ghc-7.6.3/lib/parsec-3.1.3/lib/Text/ParserCombinators/Parsec.hi

Однако, когда я запускаю GHCi в терминале или через Haskell-Mode в emacs, все работает просто отлично!

Мне интересно, что-то не так с моей конфигурацией в EclipseFP или я могу заставить GHCi также искать локальные пользовательские модули.

Кстати, я уже пробовал опцию -i, чтобы передать локальный путь поиска в CHCi

-i~/Library/Haskell/ghc-7.6.3/lib/

но, очевидно, GHCi ищет только исходные файлы (например, Parsec.hs и Parsec.lhs), но не интерфейсные файлы (Parsec.hi) по указанному пути.

Я был бы очень признателен, если бы вы могли помочь мне испытать радость программирования на Haskell в Eclipse!

Спасибо!

1 ответ

В Eclipse была создана конфигурация прогона для вашего запуска GHCi на вашем модуле. Это даст вам точные параметры, которые передаются в GHCi. Он должен ссылаться на пользовательский пакет db и на все пакеты, которые нужны вашему модулю (убедитесь, что в файле Cabal имеются соответствующие зависимости). EclipseFP по умолчанию устанавливает пакеты в пользовательскую базу данных, поэтому обычно это работает нормально. Вам не нужно добавлять определенные каталоги в GHCi в EclipseFP.

Другие вопросы по тегам