我最近开始irony-mode
在 emacs (24.3.1) 中使用完成。但是,我似乎无法为包添加额外的系统包含路径。
我的配置中有这段代码:
(defun ac-cc-mode-clang-hooks ()
(yas/minor-mode-on)
(auto-complete-mode 1)
;; avoid enabling irony-mode in modes that inherits c-mode, e.g: php-mode
(when (member major-mode irony-known-modes)
(irony-mode 1))
;; set compiler flags to include header files
(setq irony-compile-flags '("-Iinc"))
(irony-reload-flags))
(add-hook 'c++-mode-hook 'ac-cc-mode-clang-hooks)
(add-hook 'c-mode-hook 'ac-cc-mode-clang-hooks)
irony-mode 正确加载,并且编译器明确知道的包含路径(即由 打印的所有内容)完美地完成,但没有拾取 echo "" | g++ -v -x c++ -E -
附加的包含路径(无论它是相对路径还是绝对路径都无关紧要)。inc
但是,如果我将信息添加到.clang_complete
文件并使用C-c C-b
包含路径加载它,则会识别并使用它。显然这是一个不太理想的设置,因为
- 我不想为
.clang_complete
我正在处理的每一段代码创建一个文件 - 该
.clang_complete
文件不会自动加载。
是否有一些工作方法(不涉及每个项目的设置,我不想为每段代码创建项目管理文件)来告诉irony-mode
在哪里寻找头文件?