Tôi gặp rất nhiều vấn đề với cabal-install
:
1: Mỗi lần tôi làm cabal update
, nó nói với tôi để làm cabal install cabal-install
, vì vậy tôi làm, và sau đó khi tôi làm cabal update
một lần nữa, nó nói giống nhau Điều.Haskell cabal cài đặt lỗi
2: Khi tôi cố gắng để cài đặt ghc-mod
từ hackage, nó mang lại cho tôi lỗi này:
[[email protected] ~]$ cabal install ghc-mod
In order, the following will be installed:
haskell-src-exts-1.14.0 (reinstall) changes: pretty-1.1.1.1 -> 1.1.1.0
hlint-1.8.55 (reinstall)
ghc-mod-3.1.4
setup: The program happy version >=1.17 is required but it could not be found.
ghc-mod-3.1.4 depends on haskell-src-exts-1.14.0 which failed to install.
haskell-src-exts-1.14.0 failed during the configure step.
hlint-1.8.55 depends on haskell-src-exts-1.14.0 which failed to install.
Vì vậy, vấn đề là The program happy version >=1.17 is required but it could not be found.
, vì vậy tôi cài đặt happy 1.19.2
sử dụng cabal install happy
không có vấn đề.
Tôi đã thử lại cabal install ghc-mod
, cùng một lỗi, vì vậy tôi đã thử cabal install haskell-src-exts --reinstall --force-reinstalls
. Nó đã cho tôi lỗi sau:
[username[email protected] ~]$ cabal install haskell-src-exts --reinstall --force-reinstalls
Configuring haskell-src-exts-1.14.0...
setup: The program happy version >=1.17 is required but it could not be found.
Failed to install haskell-src-exts-1.14.0
cabal: Error: some packages failed to install:
haskell-src-exts-1.14.0 failed during the configure step. The exception was:
ExitFailure 1
Về cơ bản The program happy version >=1.17 is required but it could not be found.
. Vì vậy, hạnh phúc là vấn đề một lần nữa?
Tôi cũng đã cố gắng tải về các tập tin tar.gz từ hackage và sử dụng cabal install
vào file .cabal
, cũng sửa đổi .cabal
tập tin để bỏ qua phụ thuộc, vẫn thất bại.
Tuyệt vời. Tôi chỉ gặp phải hai điều thực sự kỳ lạ, vì vậy tôi viết ở đây trong trường hợp nó sẽ giúp một ai đó. Đầu tiên: Tôi đã có '$ HOME/.cabal/bin' trong $ PATH của tôi, và… nó không hoạt động! Điều đó chỉ bắt đầu hoạt động sau khi tôi thay thế '$ HOME' bằng' ~ '- thực sự buồn cười, bởi vì tôi đã sử dụng biến lo sợ rằng dấu ngã sẽ không hoạt động. Điều thứ hai: ngay cả sau khi hệ thống nhìn thấy con đường, và * hạnh phúc * - * cabal * vẫn không! Chỉ sau khi tôi thực hiện lệnh từ câu trả lời này, nó bắt đầu hoạt động. Tôi đoán là * cabal * không hiểu dấu ngã ... –
Vì vậy, tôi đoán vấn đề là như thế này: * cabal * muốn một con đường đầy đủ. Vì vậy, sau khi tôi thêm vào '/ etc/environment' trong $ PATH the': $ HOME/.cabal/bin' * (hoặc biến thể có dấu ngã) *, * cabal * trong cả hai trường hợp đều nghĩ rằng * dấu ngã * hoặc * $ HOME * là một phần của đường dẫn * (đó là đường dẫn hợp lệ) *. Để làm cho nó hoạt động, người ta phải viết vào '/ etc/environment' đường dẫn đầy đủ cho đến thư mục với các tệp nhị phân. –