2011-07-14 52 views
2

我有一個可用的EDE項目,但是我想將該命令定位到該項目的源代碼樹中的一個文件中,而不是在我的.emacs文件中。這可能嗎?將CEDET ede-cpp-root-project命令放在.emacs文件之外

我試過使用directory variables和emacs加載文件,但它確實有任何影響。要做到這一點,我把下面的代碼爲.dir-locals.el項目根:

((nil 
. ((ede-cpp-root-project "MyProj" 
    :name "MyProj Project" 
    :file "/home/jlisee/projects/myproj_code/CMakeLists.txt" 
    :include-path '("/packages") 
    :system-include-path '("/opt/myproj/local/include") 
    :spp-table '(("CONST" . "const")) 
    )))) 

回答

5

項目類型義德-CPP根是誰特別要保持項目文件出它們的來源人樹。如果您想在源代碼樹中使用項目類型,還有其他選項。

如果您使用的是最新CEDET的版本,可以改爲啓用通用的項目類型又支持CMake的(它看起來像您使用?)

(ede-enable-generic-projects) 

一旦這個通用項目CMake,使用

M-x ede-customize-project RET 

添加在包含路徑,宏表等等。

如果你沒有使用makefile,cmake或者其他的東西,你可以在你的.emacs文件中用一些代碼創建你自己的通用項目類型。在ede-generic中查看提及CMake的所有內容,並且應該很明顯地創建3件事情。

我認爲現有的項目類型使用CMakeLists而不是CMakeLists.txt,因此現有的代碼可能需要調整。

+1

我在.emacs末尾添加(ede-enable-generic-projects)。然後執行「M-x ede-customize-project RET」,錯誤顯示爲:eieio-oref:錯誤類型參數:(或eieio-object-p class-p),nil。如何修復它? –