el-get等待“* bzr branch cedet”完成

时间:2014-03-16 14:47:26

标签: emacs autocomplete bazaar cedet el-get

我已经在emacs24上安装了cedet。但是,每当我启动emacs时,我都会收到一条错误,即el-get正在安装cedet失败。这需要相当长的时间,并在制作中的某个地方失败。

为什么el-get下载已经默认出现的cedet,为什么会抛出错误,如何禁用它?

启动时:

el-get waiting for "*bzr branch cedet" to complete 
el-get is waiting for "make" to complete
error: el-get: make el-get could not build cedet [make EMACS=/usr/bin/emacs24]

1 个答案:

答案 0 :(得分:1)

每当你el-get-install时,el-get首先尝试安装依赖项 包裹声明。在安装包之前,el-get会添加包 到状态文件(默认情况下它在~/.emacs.d/el-get/.status.el)并标记 它作为一个必需的包,一旦安装包,状态就会改变 到installed。在emacs启动时,它会检查此文件以获取列表包 它必须安装,如果任何包的状态为“required”,则安装它 第一

在您的特定情况下,包ecb的配方将cedet声明为a 依赖。因此el-get首先尝试安装cedet并失败,因为。{ cedet附带的el-get食谱会尝试安装cedet 资源。此步骤失败,因为您没有安装texinfo 需要制作cedet。结果el-get标记为 所需的软件包以及每次启动它都试图安装它(并且失败)。

你可以做到 M-X el-get-remove RET name-of-offending-package RET , 所以el-get停止尝试安装该软件包。找出具体的原因 软件包安装失败,您可以随时检查构建过程的输出 通过切换到缓冲区el-get: build打包(我不记得名字了 正确,但它是类似的东西)。

对于您的特定情况,您可以完全避免安装cedet 使用以下内容指示el-get从melpa安装ecb 食谱。做 C-h v el-get-sources RET 来阅读 食谱语法

(:name ecb
       :description "Emacs Code Browser"
       :type elpa
       :repo ("melpa" . "http://melpa.milkbox.net/packages/"))

将上面的食谱添加到个人食谱中名为ecb.rcp的文件中 目录。我将它们存储在~/.emacs.d/recipes中,位置无关紧要 但是,只需确保它位于列表el-get-recipe-path中的第一位,以便这样做 你的食谱优先于内置的食谱。像

这样的东西
(add-to-list 'el-get-recipe-path "/path/to/personal/recipes")

应足以确保el-get首选您的个人食谱。