在编译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内核时,我没有遇到任何错误。
答案 0 :(得分:1)
你应该找到arch / x86 / lib / copy_user_64.S,将END(copy_user_generic_c)更改为文件中的END(copy_user_generic_string),以便在ENTRY(copy_user_generic_string)中保留相同的变量。