同时编译Linux 2.6.24内核,我得到错误
CHK include/linux/version.h CHK include/linux/utsrelease.h CALL scripts/checksyscalls.sh CHK include/linux/compile.h AS arch/x86/lib/copy_user_64.o /tmp/ccAD8iYi.s: Assembler messages: /tmp/ccAD8iYi.s: Error: .size expression for copy_user_generic_c does not evaluate to a constant make[1]: *** [arch/x86/lib/copy_user_64.o] Error 1 make: *** [arch/x86/lib] Error 2 make: *** Waiting for unfinished jobs....
我使用的是gcc版本:gcc(Ubuntu / Linaro 4.6.3-1ubuntu5)4.6.3我在编译Linux 3.12内核期间没有遇到任何错误。
您应该找到arch / x86 / lib / copy_user_64.S,将END(copy_user_generic_c)更改为文件中的END(copy_user_generic_string),以将相同的变量保留在ENTRY(copy_user_generic_string)中。