2015-12-21 108 views
0

Make文件错误 -如何解决在Ubuntu的32位机的“ptrace的错误” 14.04

make[2]: *** [arch/x86/kernel/ptrace.o] Error 1 
    make[1]: *** [arch/x86/kernel] Error 2 
    make: *** [arch/x86] Error 2 

之后我提取我的Linux-2.6.32.tar.bz2并实施新的系统调用然后输入“make”,那时我可以得到上面的错误。

+0

这不是真正的错误信息。这就是简单地说在应该生成'ptrace.o'的(C编译)命令中有一个较早的错误。解决>>那个问题。 –

+0

但是在此制作完成后,我暂时没有收到任何文件 – Akshit

+0

尝试使用make 2> log.txt和log.txt将包含有关错误的详细信息。 –

回答

2
https://lkml.org/lkml/2012/8/9/281 

Above link i found in google. This link helps me to solve the problem. 

--- linux-2.6.32.59/arch/x86/include/asm/ptrace.h 
+++ fix_ptrace.o_compile_error/arch/x86/include/asm/ptrace.h 
@@ -130,6 +130,7 @@ 

#ifdef __KERNEL__ 

#include <linux/init.h> 
+#include <linux/linkage.h> 

struct cpuinfo_x86; 
struct task_struct; 
@@ -142,8 +143,8 @@ 
      int error_code, int si_code); 
void signal_fault(struct pt_regs *regs, void __user *frame, char *where); 

-extern long syscall_trace_enter(struct pt_regs *); 
-extern void syscall_trace_leave(struct pt_regs *); 
+extern asmregparm long syscall_trace_enter(struct pt_regs *); 
+extern asmregparm void syscall_trace_leave(struct pt_regs *);