从 melpa 安装 ghc-mod:下载请求期间出错

Installing ghc-mod from melpa: Error during download request

我正在按照说明 here 在 Emacs 中安装 ghc-mod。我可以使用 M-x package-list-packages 添加 melpa 存储库和列表包,然后当我去安装 ghc 包时,会发生这种情况:

Debugger entered--Lisp error: (error "Error during download request: Not Found")
  signal(error ("Error during download request: Not Found"))
  error("Error during download request:%s" " Not Found")
  package-handle-response()
  package-download-tar(ghc "20141130.1848")
  package-download-transaction((ghc))
  package-install(ghc)
  mapc(package-install (ghc))
  package-menu-execute()
  call-interactively(package-menu-execute nil nil)

.emacs 我有

(require 'package)
;; Add the original Emacs Lisp Package Archive
(add-to-list 'package-archives
         '("elpa" . "http://tromey.com/elpa/"))
; old url for melpa
;(add-to-list 'package-archives
;             '("melpa" . "http://melpa.org/packages/") t)
(add-to-list 'package-archives 
     '("melpa-stable" . "http://melpa-stable.milkbox.net/packages/"))
;; Add the user-contributed repository
(add-to-list 'package-archives
         '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)

我在 ubuntu 上使用 emacs 24.3.1。如何进行?谢谢。

[编辑]我通过自己下载成功安装了这个包,但我仍然想知道这里出了什么问题。

看起来您可能已经开始使用 MELPA(不是 MELPA 稳定版):

  • 您的 .emacs 中有 MELPA 包存储库(尽管已被注释掉),并且
  • 回溯显示您正在尝试安装版本 20141130.1848,这是一个 MELPA 样式的时间戳。

但是 MELPA 在你的初始化文件中被评论禁用了。您 列出了 MELPA 稳定版,它使用 different versioning scheme based on Git tags instead of on build timestamps. The latest version of ghc in MELPA Stable 当前 5.2.1.2

我认为您可能在没有 运行 package-refresh-contents 的情况下进行了此更改,这会更新您的本地软件包列表。 (请注意,这通常是自动完成的,例如通过使用 package-list-packages 加载包列表)。

因此,当您尝试安装 ghc 时,根据 Emacs 的陈旧包列表,它查找版本 20141130.1848,但只能找到版本 5.2.1.2。 运行 M-x package-refresh-contents.

后重试

请注意,您启用了果酱,包含ghc(版本1.10.2)。

由于 MELPA 和 Marmalade 之间存在一些包重叠,我不建议同时使用两者。您可以手动将包固定到一个存储库,但这会很痛苦。几个月前,我专门转向了 MELPA Stable,我对此非常满意。