今天在编译自己的内核时遇到了些问题,想了好些时候,不知道如何解决,下面是报错
/usr/src/linux-2.6.32.61/usr/include/asm/ptrace.h:5: included file 'file/linkage.h' is not exported
make[2]: ***[/usr/src/linux-2.6.32.61/usr/include/asm/.check] error 123make[1]:***[headers_check] error 2
make:***[vmlinux] error 2
解决方法如下:
cd arch/x86/include/asm
vi ptrace.h
注释掉
#include<linux/linkage.h>
146行的
extern asmregparm long syscall_trace_enter(struct pt_regs *);
extern asmregparm void syscall_trace_leave(struct pt_regs *);
增加如下两行代码
extern long syscall_trace_enter(struct pt_regs *);
extern void syscall_trace_leave(struct pt_regs *);
然后make就可以了
内核源码树:
各类文件描述可以自行搜索或查阅资料