研究了半个多小时总算找到这个设置,网上的文章仅仅是描述某个变量会对他起作用,有些.emacs的配置也不完全和我当前的版本兼容。

emacs版本:GNU Emacs 23.3.1

如果你在makefile中增加了一些调用其他程序的操作,那么complie的返回结果以最后操作是否成功为主。最近在调试程序的时候在makefile中增加了自动将编译好的文件拷贝到机器上。但是机器不一定每次都拷贝成功。编译的时候有提示。所以不仅仅是make成功了,还要拷贝成功。所以每次编译完都要跳转到complie的窗口查看。
 
只要在.emacs加入
(setq compilation-scroll-output t)
编译信息就会自动滚动。从结果反过来推Lisp的语法既是:setq 用来设置一个变量,compilation-scroll-output是一个变量,t是true的缩写也可以设置成nil,也可以first-error,分别代表三种不同的行为。