Emacs 自动完成更新后损坏:未提供必需的 'popup' 功能
Emacs auto-complete broke after update: required 'popup' feature not provided
更新过时的软件包后,auto-complete
(及其依赖项 ac-slime
)出现错误 "Required feature 'popup' is not provided"。检查 elpa
目录显示 popup
在那里。使用 byte-recompile-directory
重新编译 elpa
目录中的所有内容并没有解决问题(popup.el
和 popup.elc
都存在,但 auto-complete
仍然失败)。
PS。进一步检查发现其他一些软件包失败,因为 xml-prc
不存在,但 Emacs 显示它已安装并且确实存在于 elpa
目录中。
让 Emacs 重新工作的步骤是什么?
由于还没有其他答案(我希望会有一个真实的答案!),以下是同时有效的方法:
基本上,在软件包更新过程中出了点问题——不知道具体是什么。通常,elpa
目录中的 byte-recompile-directory
有助于解决问题:它会重新编译所有包文件,并且在重新启动 Emacs 后通常可以毫无问题地加载它们。然而这一次,它没有帮助。所以我使用了更严厉的措施:我删除了 elpa
目录形式 ~/.emacs.d
(或者实际上我把它移走了),然后重新启动了 Emacs。
我的 .emacs
文件包含如果丢失需要安装的包列表,所以所有包 re-installation 自动发生,我只需要等待(大约 30 分钟)Emacs开始。
(这是一个众所周知的技巧,但如果你感兴趣,这里是来源on github)
但这个解决方案并不理想,我希望有更清洁的东西。
更新过时的软件包后,auto-complete
(及其依赖项 ac-slime
)出现错误 "Required feature 'popup' is not provided"。检查 elpa
目录显示 popup
在那里。使用 byte-recompile-directory
重新编译 elpa
目录中的所有内容并没有解决问题(popup.el
和 popup.elc
都存在,但 auto-complete
仍然失败)。
PS。进一步检查发现其他一些软件包失败,因为 xml-prc
不存在,但 Emacs 显示它已安装并且确实存在于 elpa
目录中。
让 Emacs 重新工作的步骤是什么?
由于还没有其他答案(我希望会有一个真实的答案!),以下是同时有效的方法:
基本上,在软件包更新过程中出了点问题——不知道具体是什么。通常,elpa
目录中的 byte-recompile-directory
有助于解决问题:它会重新编译所有包文件,并且在重新启动 Emacs 后通常可以毫无问题地加载它们。然而这一次,它没有帮助。所以我使用了更严厉的措施:我删除了 elpa
目录形式 ~/.emacs.d
(或者实际上我把它移走了),然后重新启动了 Emacs。
我的 .emacs
文件包含如果丢失需要安装的包列表,所以所有包 re-installation 自动发生,我只需要等待(大约 30 分钟)Emacs开始。
(这是一个众所周知的技巧,但如果你感兴趣,这里是来源on github)
但这个解决方案并不理想,我希望有更清洁的东西。