- 论坛徽章:
- 0
|
刚刚看了begining linux programming 这本书,书上有个例子,是一个hello kernel的入门例子,我把代码打到我的fedora core6中,执行:
gcc -D__KERNEL__ -I /usr/src/kernels/2.6.18-1.2798.fc6-i586/include -DMODULE -Wall -O2 -c hello.c -o hello.o
但是弹出很多错误:
In file included from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/thread
_info.h:16,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/thre
ad_info.h:21,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/pree
mpt.h:9,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/spin
lock.h:49,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/capa
bility.h:45,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/sche
d.h:44,
from /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/modu
le.h:9,
from hello.c:1:
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/processor.h:80: 错误:‘CONFI
G_X86_L1_CACHE_SHIFT’ 未声明 (不在函数内)
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/asm/processor.h:80: 错误:要求的
对齐边界不是常量
在包含自 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/sched.h:49 的文
件中,
从 /usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/module
.h:9,
从 hello.c:1:
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:33:3: 错误:#err
or You lose.
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: 错误:#i
f 中用零做除数
/usr/src/kernels/2.6.18-1.2798.fc6-i586/include/linux/jiffies.h:210:31: |
|