我写了一个非常简单的程序,如:(抱歉,我以正确的方式输入了代码,但是显示屏是有线的。我怎么能修复它?)
#include <stdio.h>
int main( void )
{
int i;
for ( i = 0; i <= 10; i++ ) {
printf( "%d hello!\n", i);
}
return 0;
}
通常,我使用命令
在终端编译c程序cc -o xxx xxx.c
所以在Emacs中,当我键入M-x compile时,我将make -k更改为cc -o。 但是我得到了像
这样的错误cc:缺少'-o'的参数
有什么问题?
如果我使用make,那么我仍然会收到错误
未指定目标且未找到任何makefile。
最后,如果修复了上述问题,我该如何定义编译的自定义热键? 我已经知道如何做像
这样的事情了global-set-key [f8]'goto-line
但我不知道只为c-mode设置一个动作的热键。
答案 0 :(得分:2)
您需要提供整个cc行。
“make -k”假设您有一个Makefile提供制作命令。
所以,用
替换make -kcc -o xxx xxx.c
至于emacs绑定:
(global-set-key [f6] 'compile)
答案 1 :(得分:1)
构建这样的简单文件程序的一个好方法是在文件顶部添加compile-command变量的值,如下所示:
// -*- compile-command:"g++ helloworld.cpp -g -o helloworld.exe"; -*-
我的博文"Writing quick C++ programs in emacs without a makefile"
中有更详细的信息答案 2 :(得分:0)
尝试将make -k更改为xxx。
答案 3 :(得分:0)
我认为这样做的好方法就是记录变量compile-command
(compile
使用的那个,通常包含make -k
)。
请C-h v compile-command
查看变量的文档。它包含一些您可以根据自己的喜好进行更改的代码。