当试图在Emacs中运行M-x Flymake-Mode时,我得到:
Flymake: Configuration error has occured while running (make -s -C ./CHK_SOURCES=helloworld_flymake.c SYNTAX_CHECK_MODE=1 check-syntax). Flymake will be switched OFF
我在名为helloworld.c的缓冲区中调用该命令:
#include <stdio.h>
int main(void) {
printf("Hello World");
return 0;
}
在同一目录中有一个名为Makefile的文件:
helloworld: helloworld.c
gcc helloworld.c -o helloworld
我在Ubuntu 9.04下运行GNU Emacs 23.0.91.1。
提前致谢!
答案 0 :(得分:19)
Makefile' must contain the
check-syntax'目标。将其附加到Makefile:
check-syntax:
gcc -o nul -S ${CHK_SOURCES}
确保使用TAB启动第二行。还有一个flymake的错误,你必须用一个大写字母M命名Makefile。如果你把它称为“makefile”,它将无法工作。小心!
答案 1 :(得分:1)
这是你的makefile的实际内容吗?看起来在第二行之前有一个空格''。这应该是一个标签:
helloworld: helloworld.c
gcc helloworld.c -o helloworld
更像这样:
helloworld: helloworld.c
gcc helloworld.c -o helloworld
请记住,SO编辑器似乎已将我的制表符转换为空格,所以不要这样做。
helloworld: helloworld.c
<press tab here>gcc helloworld.c -o helloworld