【问题标题】:Unable to compile Emacs auto-complete. Dependency on popup无法编译 Emacs 自动完成功能。对弹窗的依赖
【发布时间】:2013-03-09 20:19:39
【问题描述】:

我刚刚从 GitHub 克隆了 auto-complete。当我输入时

制作

我明白了:

emacs -Q -L . -batch -f batch-byte-compile auto-complete.el auto-complete-config.el

In toplevel form:
auto-complete.el:49:1:Error: Cannot open load file: popup

In toplevel form:
auto-complete-config.el:31:1:Error: Cannot open load file: popup
make: *** [byte-compile] Error 1

我在auto-complete 文档中没有看到任何说明我必须安装popup 的内容。我不记得以前遇到过这个问题。这是一个新的依赖吗? popupauto-complete 需要的包吗?

【问题讨论】:

    标签: emacs autocomplete


    【解决方案1】:

    如果您使用 Emacs 24(您现在可能应该使用),您可以使用命令 M-x package-install 并通过那里安装自动完成功能。这将正确安装它,并且是安装软件包的最佳方法。

    popup.el 应该包含在您的自动完成副本中,如果没有,请在此处查看 https://github.com/auto-complete/popup-el 以获取相应的副本。

    要启用软件包,您可以在 .emacs 中添加类似的内容:

    (require 'package)
    (add-to-list 'package-archives
                 '("melpa" . "http://melpa.milkbox.net/packages/") t)
    (package-initialize)
    (setq url-http-attempt-keepalives nil)
    

    最后一行只是为了防止大包的下载有时超时。

    【讨论】:

    • 感谢耶稣。我正在运行 24.2.1,当我尝试使用 M-x package-install 安装 auto-complete 时,我得到了 No match。有什么想法吗?
    • @user273158 您可能需要在 .emacs 中执行 require ('package) 或在某个缓冲区中对其进行评估,然后调用 (package-initialize)
    • 谢谢! melpa 到底是什么?我在package-archives 中还有其他来源,例如ELPAgnumarmalade。我在哪里可以找到有关这些来源的更多信息,您如何知道哪个包在哪个来源可用?
    • @user273158 它们是不同的软件包来源,MELPA 只是一个默认情况下不包含的大来源。你可以在谷歌上快速搜索更多的包源,但我只是坚持使用默认值和MELPA
    • 谢谢。顺便说一句,我添加了所有这些源并尝试重新加载 Emacs 几次,但我仍然没有在我可以安装的包列表中看到 auto-complete(我使用的是 Helm,它显示了许多 Emacs 命令的候选者)。无论哪种方式,即使我尝试完整输入auto-complete,它也会在M-x package-install 中返回no match
    【解决方案2】:

    遇到与您相同的问题,发现您之前发布了一些挣扎以找出它不起作用的原因:我忘记启动子模块...为什么 Make 没有查找弹出窗口并崩溃

    所以要解决它,请进入您的自动完成存储库并运行

    git submodule update --init
    

    这将构建编译自动完成所需的三个库

    【讨论】:

      猜你喜欢
      • 2014-05-17
      • 1970-01-01
      • 1970-01-01
      • 2018-08-20
      • 1970-01-01
      • 2016-04-14
      • 1970-01-01
      • 2012-07-27
      • 2018-12-11
      相关资源
      最近更新 更多