Emacs自动补全:函数`define-package`未知。

3
我正在尝试在OS X 10.8.4上使用通过brew安装的emacs 24安装自动补全模式。 我已经通过git克隆了自动补全 git镜像 ,并遵循构建说明。在执行make install期间,我收到一个错误,告诉我define-package(可能是一些elisp)未定义。
➜  auto-complete git:(master) make install
emacs -Q -L . -batch -l etc/install 
Install to: ~/.emacs.d/
Installing to ~/.emacs.d/ from /Users/f/src/auto-complete/

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

In end of data:
auto-complete-pkg.el:5:1:Warning: the function `define-package' is not known
    to be defined.
Wrote /Users/f/src/auto-complete/auto-complete-pkg.elc

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

有人之前遇到过这个问题吗?有解决方法吗?

在进一步研究后,看起来这可能是与弹出窗口相关的缺失库问题(http://www.emacswiki.org/PopUp)。 - user284244
您引用的文本包含2个“错误”和一个“警告”,那么为什么您选择在问题标题中放置该警告? - Stefan
2
我认为你最好使用MELPA包管理器。Autocomplete肯定可以在那里找到它。它看起来也像是它的Makefile试图使用MELPA例程安装。 - user797257
1个回答

4

使用Melpa或者Marmalade来通过package.el进行安装。Auto-complete期望以这种方式被安装,你也将能够轻松地获得更新的安装。

如果你还没有配置好package.el,请将以下内容添加到.emacs或者.emacs.d/init.el中:

(setq package-archives 
      '( 
        ("marmalade" . "http://marmalade-repo.org/packages/")
        ("elpa" . "http://tromey.com/elpa/")
        ("melpa" . "http://melpa.milkbox.net/packages/")
        ("gnu" . "http://elpa.gnu.org/packages/")
        ))

(package-initialize) ;; init elpa packages

只需运行M-x package-list-packages(或M-x p-l-p TAB),然后从包列表中安装auto-complete插件,用i标记包并使用x来运行标记的包的安装。定期打开M-x package-list-packages,按下U可以将已安装的软件包标记为更新,按x来运行更新。 这假设您正在使用Emacs 24。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接