Как использовать asdf с haskell
Я хотел бы использовать инструмент asdf-haskell. Я установил asdf-vm, и я установилasdf-haskell
.
Я установил ghc-8.4.3
а также ghc-8.6.5
бегом asdf install haskell 8.4.3
а также asdf install haskell 8.6.5
. Похоже, что установка сработала, по крайней мере, на "стороне asdf". Содержимое моего каталога~/.asdf/installs/haskell
как и ожидалось
Однако, когда я нахожусь в проекте стека и запускаю stack test
, стек идет вперед и загружается ghc-8.6.5
снова в ~/.stack
. Я ожидал, что он будет использовать то, что уже было загружено в~/.asdf
каталог. Что я здесь делаю не так?
2 ответа
Я не очень знаком с плагином asdf-haskell, но похоже, что stack
Команда, которую вы выполняете, может быть не той, которую предоставляет asdf. Попробуйте бежатьtype -a stack
и посмотреть, что stack
команда на самом деле находится в вашем PATH. Вы также можете запуститьecho $PATH
и посмотрите, находится ли на вашем пути каталог asdf shims, как и должно быть. Если вы не видите версиюstack
предоставляется asdf либо:
- У вас неправильно установлен asdf, и в ваш PATH не добавляются прокладки (вернитесь на веб-сайт документации и повторите шаги установки).
- Или прокладки по какой-то причине не были созданы, и в этом случае вы можете запустить
asdf reshim
исправить их.
Может быть предполагаемое поведение стека, как указано:
Настройка стека при необходимости загрузит компилятор в изолированное место (по умолчанию ~ / .stack), которое не будет мешать установке на уровне системы. (Для получения информации о путях установки используйте команду stack path.).
Источник (в разделе " Начать новый проект" )