我正在使用Gentoo版本的emacs 24.3
我从后备箱安装了CEDET ..。将其克隆到~/.emacs.d/site-lisp/ cedet.el (感谢Alex ),加载整个程序的cedet.el以:
;; Do checkout of fresh CEDET, and use this config (don't forget to change path below)
(setq cedet-root-path
(file-name-as-directory (expand-file-name
~/.emacs.d/site-lisp/cedet-bzr/")))
(add-to-list 'Info-directory-list
"~/.emacs.d/site-lisp/doc/info")为了确保emacs配置中没有障碍,我移动了.emacs文件,并尝试使用init.el:(add 'load-path "~/.emacs.d/ config ") (加载"cedet.el") (add 'load-path (展开文件名“~/.emacs.d/site/”))运行emacs。
它给了我一种折腾:
Debugger entered--Lisp error: (error "Cannot unload builtin CEDET since it is already loaded.")
signal(error ("Cannot unload builtin CEDET since it is already loaded."))
error("Cannot unload builtin CEDET since it is already loaded.")
(progn (error "Cannot unload builtin CEDET since it is already loaded."))
(if (featurep (quote cedet)) (progn (error "Cannot unload builtin CEDET since it is already loaded.")))
cedet-remove-builtin()
eval-buffer(#<buffer *load*-732142> nil "/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-remove-builtin.el" nil t) ; Reading at buffer position 2476
load-with-code-conversion("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-remove-builtin.el" "/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-remove-builtin.el" nil nil)
load("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-remove-builtin.el" nil nil t)
load-file("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-remove-builtin.el")
(if (boundp (quote cedet-bootstrap-in-progress)) nil (load-file (expand-file-name "cedet-remove-builtin.el" CEDETDIR)))
(let ((CEDETDIR (file-name-directory (or load-file-name (buffer-file-name))))) (if (boundp (quote cedet-bootstrap-in-progress)) nil (load-file (expand-file-name "cedet-remove-builtin.el" CEDETDIR))) (add-to-list (quote load-path) CEDETDIR) (add-to-list (quote load-path) (expand-file-name "lisp/cedet" CEDETDIR)) (add-to-list (quote load-path) (expand-file-name "lisp/eieio" CEDETDIR)) (add-to-list (quote load-path) (expand-file-name "lisp/speedbar" CEDETDIR)) (require (quote eieio)) (require (quote ede)) (if (boundp (quote cedet-bootstrap-in-progress)) nil (message "Loading autoloads from CEDET development.") (load (expand-file-name "lisp/eieio/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/speedbar/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/cedet/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/cedet/ede/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/cedet/cogre/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/cedet/srecode/loaddefs.el" CEDETDIR) nil t t) (load (expand-file-name "lisp/cedet/semantic/loaddefs.el" CEDETDIR) nil t t) (setq Info-directory-list (cons (expand-file-name "doc/info" CEDETDIR) Info-default-directory-list))) (require (quote cedet-compat)))
eval-buffer(#<buffer *load*-120873> nil "/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-devel-load.el" nil t) ; Reading at buffer position 2893
load-with-code-conversion("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-devel-load.el" "/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-devel-load.el" nil nil)
load("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-devel-load.el" nil nil t)
load-file("/home/pasha/.emacs.d/site-lisp/cedet-bzr/cedet-devel-load.el")
eval-buffer(#<buffer *load*-946311> nil "/home/pasha/.emacs.d/config/cedet.el" nil t) ; Reading at buffer position 587
load-with-code-conversion("/home/pasha/.emacs.d/config/cedet.el" "/home/pasha/.emacs.d/config/cedet.el" nil nil)
load("cedet.el")`enter code here`
eval-buffer(#<buffer *load*> nil "/home/pasha/.emacs.d/init.el" nil t) ; Reading at buffer position 63
load-with-code-conversion("/home/pasha/.emacs.d/init.el" "/home/pasha/.emacs.d/init.el" t t)
load("/home/pasha/.emacs.d/init" t t)
#[0 "\205\262我还应该做些什么呢?
发布于 2013-12-07 20:51:22
您可以尝试先从load-path中删除emacs附带的CEDET。
(setq load-path (remove-if (lambda (x) (string-match-p "cedet" x)) load-path))在init.el中,然后将新的CEDET添加到load-path。
https://stackoverflow.com/questions/20445568
复制相似问题