linux编译出现错误

关于2.6.31遇到的问题
错误提示1:
drivers/built-in.o(.init.text+0x3bad): In function `con_init':
include/trace/events/kmem.h:47: undefined reference to `.L1452'
解决:
vi /usr/src/linux/drivers/char/vt.c 找到static int __init con_init(void)函数中,以下语句
删除以下行(第2875行)
vc_cons[currcons].d = vc = kzalloc(sizeof(struct vc_data), GFP_NOWAIT);  
在相同位置添加:
vc_cons[currcons].d = vc = alloc_bootmem(sizeof(struct vc_data));
同时记得加上头文件 #include <linux/bootmem.h>,否则会出现第2个错误。
 
错误提示2:
drivers/char/vt.c: In function `con_init':
drivers/char/vt.c:2875: error: implicit declaration of function `alloc_bootmem'
drivers/char/vt.c:2875: warning: assignment makes pointer from integer without a cast
原因:vt.c中引用了alloc_bootmem,但是找不到相关.h定义文件或没有在相关的头文件.h中定义
解决:
 

# vi /usr/src/linux/drivers/char/vt.c,添加以下这行:
#include <linux/bootmem.h>
 
错误提示3:
drivers/message/fusion/mptsas.c: In function `mptsas_port_delete':
drivers/message/fusion/mptsas.c:105: sorry, unimplemented: inlining failed in call to 'mptsas_set_rphy': function body not available
drivers/message/fusion/mptsas.c:467: sorry, unimplemented: called from here
原因:
mptsas_port_delete中引用了mptsas_set_rphy,但mptsas_set_rphy的定义却在mptsas_port_delete之后。
解决:
vi /usr/src/linux/drivers/message/fusion/mptsas.c,将mptsas_set_rphy的定义(第483行起)移动到mptsas_port_delete的定义(第446行)前面即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值