【问题标题】:ht.elc fails to provide feature htht.elc 无法提供功能 ht
【发布时间】:2019-10-26 17:35:32
【问题描述】:

我大量使用 emacs org-mode,但通常不使用 emacs。我仍在使用 emacs 25.3,但也安装了 26.3。今天晚上,在 Windows 更新后(可能是问题的原因?),当我在 25.3 下重新启动 emacs (runemacs) 时收到以下错误消息。

错误:未提供必需的功能“ht”

我也尝试在 emacs 26.3 下运行它并收到一条更有用的错误消息“c:etc. etc. /AppData/Roaming/.emacs.d/elpa/ht-20190924.704/ht.elc failed to provide feature 'ht'"

我在几周内没有更改或更新任何软件包。所以,不太可能是 org-mode 或 emacs 的变化。

我尝试了各种不同的方法,但没有任何运气。除其他外,我从几天前的备份中恢复了 elpa 文件和我的自定义文件,但没有得到不同的结果。

带有 emacs 25.3 的package-list-package 可以处理错误消息,我可以升级可以升级的包(2)。但是,这对我重新启动 emacs 时收到的错误消息也没有影响。这确实意味着 ht.elc 正在工作,因为没有它,您将无法安装软件包,因为新软件包需要检查其哈希码。如果我删除 ht 包并尝试在没有它的情况下更新包,则更新会在哈希码检查中失败。

带有 emacs 26.3 的 package-list-package 是另一个问题,这可能是我不使用它的原因。 TLS连接失败,无法连接melpa、orgmode.org等

无论如何,此时我无法加载我的自定义文件,也无法使用 org-mode。有人有什么想法、问题或建议吗?

提前致谢。

【问题讨论】:

  • 我不知道ht 是什么,但错误可能意味着它所说的。一个功能不是provided,除非它包含执行此操作的代码。 (provide 'ht) 在这种情况下。所以检查ht.el 看看它是否真的这样做了(它应该在文件的最后)。如果是这样,请尝试手动对其进行字节编译。如果没有,那么(a)它应该是一个错误,或者(b)它出于某种原因故意不这样做,但其他东西正在尝试(require 'ht)(因此出现错误)。
  • 我假设 c:etc. etc. 不是错误消息中的路径字面包含的内容(并且真实路径是准确的)。
  • 等等等等是我隐藏文件路径中包含的个人信息,是的,真实路径是正确的。 ht.el 包是一个哈希表库。我非常依赖的另一个 org 包将 ht 作为依赖项。

标签: emacs org-mode


【解决方案1】:

这是一个解决方案,而不是一个答案。

使用 package-list-packages 并查看 ht 包的详细信息,它显示 melpa 提供了一个“替代”版本;相同的发行号。所以,我选择安装它,然后更新的软件包列表显示我安装了两次相同的版本。

然后我关闭了 emacs 并重新启动它。它以类似的错误消息开头,但这次指的是 dash 包。如上所述重复重复安装过程。

我再次关闭 emacs 并重新启动它,现在它可以正常加载和运行了。

我之前曾尝试从 elpa 目录中删除 ht 包,但这样做并尝试安装新包会导致大量错误。我不记得所有这些,但至少其中之一是 emacs 无法读取包签名。

所以,问题解决了,但我仍然不知道为什么它首先会发生,因为我已经有几周没有更新任何软件包了,也不知道为什么从几天前恢复目录并没有解决问题。

在有人对我大喊要迁移到当前的 emacs 之前,我现在已经安装了缺少的依赖项并在 26.3 上运行。

【讨论】:

  • 如果您删除了导致问题的版本,那么就没有什么可以调试问题了。如果再次发生这种情况,我建议您保留这些文件的副本,以便您至少可以检查它们。
  • 啊,但我有很好的备份,你的评论让我从几天前开始比较 ht.el 和 ht.elc。很多头敲在键盘上。几天前,该文件的长度突然下降到 0。不知道为什么,或者白天什么时候,但这确实使 Windows 更新退出了有罪方的运行,并且确实解释了前一天的恢复没有解决问题的地方。由于我不是每天都重新启动 emacs,因此文件损坏时问题没有出现。现在我知道为什么了,bit 可能永远不会知道怎么做,也不知道为什么我后来遇到了 dash.el 问题
猜你喜欢
  • 2018-10-09
  • 2018-10-09
  • 2020-10-02
  • 2020-03-08
  • 1970-01-01
  • 2014-04-29
  • 2020-12-31
  • 1970-01-01
  • 2014-08-17
相关资源
最近更新 更多