Làm việc với Cabal quá mệt mỏi, tôi đang giữ một bản sao của tệp .cabal làm việc mới nhất của mình để khi một số gói khác (đặc biệt là các tệp thực thi như hakyll, mất vĩnh viễn để cài đặt lại) bị hỏng, tôi có thể tải lại từ điểm lưu mới nhất .có giải pháp nào cho Cabal bị hỏng cài đặt lại không?
Nhưng nó vẫn không làm cho một số nội dung dễ dàng hơn bởi vì tôi không thể cài đặt một số gói mà không cần cài hoàn toàn gói của tôi trong thứ tự khác nhau (ví dụ. Các gói mà phá vỡ những người khác nên được cài đặt trước khi những người khác, vv)
Ví dụ, đây là những gì sẽ xảy ra khi tôi cố gắng để cài đặt cabal-dev
(mà là một gói rất quan trọng đối với tôi):
➜ ~ cabal install cabal-dev
Resolving dependencies...
In order, the following would be installed:
bytestring-0.9.2.1 (new version)
containers-0.4.2.1 (new version)
template-haskell-2.8.0.0 (reinstall) changes: containers-0.5.0.0 -> 0.4.2.1
text-0.11.2.3 (reinstall) changes: bytestring-0.10.0.0 -> 0.9.2.1
transformers-0.2.2.0 (new version)
mtl-2.0.1.0 (new version)
parsec-3.1.3 (reinstall) changes: bytestring-0.10.0.0 -> 0.9.2.1, mtl-2.1.2 ->
2.0.1.0
unix-2.3.2.0 (new version)
directory-1.0.0.3 (new version)
network-2.3.2.0 (new version)
HTTP-4000.2.6 (reinstall) changes: bytestring-0.10.0.0 -> 0.9.2.1, mtl-2.1.2
-> 2.0.1.0, network-2.4.0.1 -> 2.3.2.0
process-1.1.0.2 (reinstall) changes: directory-1.2.0.0 -> 1.0.0.3,
unix-2.6.0.0 -> 2.3.2.0
Cabal-1.14.0 (new version)
tar-0.3.2.0 (new package)
zlib-0.5.4.0 (reinstall) changes: bytestring-0.10.0.0 -> 0.9.2.1
cabal-dev-0.9.1 (new package)
cabal: The following packages are likely to be broken by the reinstalls:
shakespeare-1.0.2
hamlet-1.1.2
hakyll-3.5.2.0
lens-3.7.1.2
ghc-7.6.1
haddock-2.13.1
data-lens-template-2.1.7
cmdargs-0.10.1
hoogle-4.2.14
QuickCheck-2.5.1.1
Extra-1.46
ipprint-0.4.2
xml-1.3.12
texmath-0.6.1.1
pandoc-1.9.4.5
wai-1.3.0.1
warp-1.3.6
tagsoup-0.12.8
snap-server-0.9.2.4
snap-core-0.9.2.2
regex-tdfa-1.1.8
Unixutils-1.52
network-2.4.0.1
simple-sendfile-0.2.10
network-conduit-0.6.2.1
citeproc-hs-0.3.6
language-lua-0.1.4
json-0.7
highlighting-kate-0.5.3.3
ddc-base-0.3.1.1
ddc-driver-0.3.1.3
ddc-core-simpl-0.3.1.1
ddc-core-llvm-0.3.1.1
ddc-build-0.3.1.3
ddc-core-salt-0.3.1.1
ddc-core-eval-0.3.1.1
ddc-core-0.3.1.1
http-types-0.7.3.0.1
hexpat-0.20.3
hashable-1.2.0.2
vault-0.2.0.3
unordered-containers-0.2.3.0
uniplate-1.6.10
case-insensitive-0.4.0.4
enumerator-0.4.19
zlib-enum-0.2.3
blaze-builder-enumerator-0.2.0.5
attoparsec-enumerator-0.3.1
conduit-0.5.5
blaze-builder-conduit-0.5.0.3
blaze-markup-0.5.1.4
blaze-html-0.5.1.3
blaze-builder-0.3.1.0
attoparsec-0.10.3.0
haskell98-2.0.0.2
Cabal-1.16.0
bin-package-db-0.0.0.0
zlib-bindings-0.1.1.2
zip-archive-0.1.2.1
Use --force-reinstalls if you want to install anyway.
Và chỉ workaround cho điều này là để cài đặt cabal-dev trước một số gói khác trong danh sách đó. Nhưng tôi nghĩ ngay cả khi tôi làm điều đó, nó không đảm bảo rằng một số gói khác sẽ không bị mâu thuẫn.
Bây giờ tôi tự hỏi làm thế nào bạn xử lý xung đột trong cài đặt cabal của bạn, và nếu có một sửa chữa cho việc này. Tôi chỉ không thể cài đặt tất cả các thư viện tôi cần với Cabal. Bất kỳ trợ giúp sẽ được đánh giá cao.
Điều trớ trêu là đây là loại vấn đề cabal-dev được thiết kế để hoạt động. Để cài đặt cabal-dev, trước tiên bạn phải cài đặt cabal dev. Có ai có một hệ điều hành được đánh giá lười biếng nằm xung quanh? – AndrewC