![](/img/trans.png)
[英]How do I make ede-cpp-root-project work with Project.ede
[英]Lisp error while using ede-cpp-root-project
我一直试图让CEDET在最后一段时间内完成一个简单的项目。 我有以下项目文件:
(ede-cpp-root-project "aesalon-project"
:name "aesalon-name"
:file "~/projects/aesalon/SConstruct"
:include-path '("/"
"/include/"))
我一直在将上面的内容加载到缓冲区并执行缓冲区内容。 问题不在于项目没有正确加载 - 它似乎打赌设置得当; 我可以使用菜单栏更改设置等。 但是,当我尝试重新扫描项目的文件时,出现以下错误:
Debugger entered--Lisp error: (wrong-type-argument class-p ede-cpp-root)
signal(wrong-type-argument (class-p ede-cpp-root))
child-of-class-p(ede-cpp-root-project ede-cpp-root)
object-of-class-p([object ede-cpp-root-project "aesalon-project" nil "aesalon-name" "1.0" "/home/ethereal/projects/aesalon/" 3546321 "/home/ethereal/projects/aesalon/SConstruct" nil nil nil unbound unbound "" "" "" "" "" "" ("debug" "release") "debug" nil ("/" "/include/") nil nil nil "\\.\\(h\\(h\\|xx\\|pp\\|\\+\\+\\)?\\|H\\)$\\|\\<\\w+$" nil] ede-cpp-root)
ede-toplevel-project("~/projects/aesalon/")
ede-rescan-toplevel()
call-interactively(ede-rescan-toplevel nil nil)
我发现这有点奇怪,因为当我查看ede-cpp-root-project
的文档时,我发现它有ede-project
作为其父项,而不是ede-cpp-root
? 还是我误解了这条痕迹? 我对Emacs Lisp不太熟悉。
这是我的cedet-version的输出:
CEDET Version: 1.0
Requested File Loaded
Package Version Version Version
----------------------------------------------------------
cedet: 1.0 ok ok
eieio: 1.3 ok ok
semantic: 2.0 ok ok
srecode: 1.0 ok ok
ede: 1.0 ok ok
speedbar: 1.0.3 ok ok
cogre: 1.0 ok Not Loaded
cedet-contrib: 1.0 ok Not Loaded
C-h f cedet-version RET
for details on output format.
我的emacs版本:(最新的Arch Linux存储库)
GNU Emacs 23.4.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.9) of 2012-02-01 on shirley.hoetzel.info
有没有人对如何解决这个问题有任何建议? 这是我的项目的问题吗? 我的CEDET环境? emacs的版本?
显然问题是EDE和CEDET的不一致。 我可以说,我使用的CEDET版本依赖于EDE的旧架构,该架构已被更改。
从最新的源代码树编译CEDET而不是我正在使用的(较旧的)快照修复了问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.