我有一个项目,使用autotools。自动工具的一个很好的功能是“乱源”构建,wheras而不是做:修复源代码文件搜索路径,当在源代码自动工具内建立emacs
cd foobar
./configure
make
我真正创建一个文件夹建立,在我做的配置:
cd foobar/builds/linux
../../configure
make
(好的是,我的源文件夹不会与生成的Makefiles瘫痪,并且在交叉编译时会有所帮助)。
因此,当我在emacs中编写代码时,要运行编译,我将执行M-x compile
,将编译命令指定为cd ~/foobar/builds/linux ; make
。
这工作正常,直到发生编译错误。编译缓冲区将列出具有丑陋路径的文件(如../../../../src...
),该文件指向源文件,相对于构建文件夹。但是,看起来emacs在编译结束时不会保留在build文件夹中,所以链接不指向任何东西。因此,我不能轻松浏览回错误。
我试过玩compilation-search-path
,没有运气。
有没有办法在编译文件夹逼Emacs在“留”(这样在编译缓冲参考现有文件的路径?)
感谢
PH
谢谢,但它似乎没有帮助..我应该补充说我有几个源文件夹,并且我在顶层运行make。 例如: *我建立在/ home/phtrivier/PRJ/foobar的/构建/ LINUX /电流 *我从/家/ phtrivier/PRJ/foobar的/ src目录文件的错误/客户端 在编译缓冲区,'make -C〜/ foobar/builds/linux/current check'我得到错误: make [2]:entrant dans lerépertoire«/ home/phtrivier/prj/foobar/builds/linux/current/src/client ...(编译行跳过) ../../../../../src/client/whatever.cpp 但是当点击该行时,找不到: ( – phtrivier 2009-11-23 22:17:52