我的工作计算机(Ubuntu 8.10)安装了CEDET 1.0pre4版本,并且我试图在本地安装最新版本的CEDET(1.0pre6)目录(最终目标,将ECB升级到最新版本)。安装CEDET 1.0pre6作为用户,同时保持安装CEDET 1.0pre4 deb包
不幸的是,在我的.emacs文件被调用之前,默认的debian/ubuntu安装会初始化CEDET和ECB的系统范围的软件包,然后1.0pre6文件尝试加载抛出错误,尝试使用未在1.0中定义的符号PRE4。 (有关其他人报告相同问题,请参阅this mailing list thread)。
我首先尝试手动重新加载CEDET在我的.emacs中提供的软件包,但其中一个无法重新加载两次。
我正在尝试unload-feature
命令。当我尝试卸载CEDET,我得到的错误:
Lisp error: (error "Loaded libraries (\"/etc/emacs/site-start.d/55ecb.el\") depend on /usr/share/emacs22/site-lisp/cedet-common/cedet.elc")
但没有ecb
功能卸载。有一个ecb-autoloads
功能,它似乎是由/etc/emacs/site-start.d/55ecb.el提供的,但该库似乎也依赖于它。
我想我可以以某种方式让Emacs卸载系统范围的ECB,或者我可以以某种方式将系统范围配置中的大部分内容添加到我的.emacs文件的顶部,从而删除ECB和CEDET loading 。
后者听起来杂乱,丑陋和不稳定。如果我知道如何,我宁愿做前者。或者,也许有人有更好的解决这个问题?
这可能很明显,你已经试过了,但是你不能让你的管理员卸载你的系统上的CEDET软件包吗? – 2010-01-19 16:18:26
是的,这很明显,但我想应该有办法解决它。但是我们已经升级了电脑,系统管理员忘记重新安装cedet了,所以我没有提醒他。 (无论如何,我是唯一使用它的人)。 – AFoglia 2010-01-20 17:59:20