Linux3.2.0
鉴于以下来源:
#include <stdio.h>
#include <sched.h>
int main(void)
{
printf("%i \n", CLONE_PTRACE);
return 0;
}
我明白了:
test.c:在函数'main'中: test.c:6:18:错误:'CLONE_PTRACE'未声明(首次在此函数中使用)
为什么?
答案 0 :(得分:1)
你需要#define _GNU_SOURCE
这种或那种方式获得这些常量。 (参见clone(2)
手册页。)
将您的代码保存为t.c
:
$ gcc -std=c99 t.c
t.c: In function ‘main’:
t.c:6:25: error: ‘CLONE_PTRACE’ undeclared (first use in this function)
t.c:6:25: note: each undeclared identifier is reported only once for each function it appears in
$ gcc -std=c99 -D_GNU_SOURCE t.c
$ ./a.out
8192