2012-10-11 79 views
6

閱讀後:自動提取索引源代碼的gcc -I路徑在Emacs

我得知了創建項目文件夾時,現有的使文件源代碼,我可以通過semantic索引文件:

  1. 定義一個簡單的EDE項目:

    (ede-cpp-root-project ... :system-include-path '("~/exp/include/boost_1_37")

  2. 或通過指定include路徑直接與

    (semantic-add-system-include "~/exp/include/boost_1_37" 'c++-mode)

語義但是,這仍然需要我鍵入路徑手動。有沒有什麼辦法可以從現有的make文件中自動提取include的語義路徑?

背景: 有些IDE具有從現有的使文件自動發現 GCC -I路徑的功能。例如,在Eclipse中,您可以使用現有的make文件和源代碼在路徑上創建項目,並且Eclipse在構建項目時會推斷其「intellisense」的包含路徑(我假定Eclipse將GNU make的輸出解析爲做這個)。我想在Emacs中做同樣的事情。

回答

1

答案是「是」:有一種方法可以發現這個包含路徑。 AFAIK它的代碼尚未寫入(我可能會誤解這一個)。您只需運行make -n並在輸出中查找「-I」。當然,魔鬼是在細節中,但應該可以很容易地寫出一個概念驗證。