首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

包含<asm/semaphore.h>后编译通不过?解决方案

2012-03-09 
包含asm/semaphore.h后编译通不过???我在程序中包含了<asm/semaphore.h>后运行gcc-c-D__KERNEL__-I/usr/

包含<asm/semaphore.h>后编译通不过???
我在程序中包含了<asm/semaphore.h>后运行   gcc   -c   -D__KERNEL__   -I/usr/src/linux/include   pc.c编译出错:
/usr/src/linux/include/asm/rwsem.h:   在函数   ‘__down_read’   中:
/usr/src/linux/include/asm/rwsem.h:106:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/rwsem.h:   在函数   ‘__down_write’   中:
/usr/src/linux/include/asm/rwsem.h:158:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/rwsem.h:   在函数   ‘__up_read’   中:
/usr/src/linux/include/asm/rwsem.h:195:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/rwsem.h:   在函数   ‘__up_write’   中:
/usr/src/linux/include/asm/rwsem.h:221:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/rwsem.h:   在函数   ‘__downgrade_write’   中:
/usr/src/linux/include/asm/rwsem.h:246:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’In   file   included   from   pc.c:7:
/usr/src/linux/include/asm/semaphore.h:   在函数   ‘down’   中:
/usr/src/linux/include/asm/semaphore.h:105:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/semaphore.h:   在函数   ‘down_interruptible’   中:
/usr/src/linux/include/asm/semaphore.h:130:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/semaphore.h:   在函数   ‘down_trylock’   中:
/usr/src/linux/include/asm/semaphore.h:155:   错误:expected   ‘:’   or   ‘)’   before   ‘KBUILD_BASENAME’/usr/src/linux/include/asm/semaphore.h:   在函数   ‘up’   中:
/usr/src/linux/include/asm/semaphore.h:179:   错误:expected   ‘:’   or   ‘)’   before  

请问是为什么?是否gcc还需加什么参数?还是要在编译内核时增加什么选项??

[解决办法]
你在编译内核么?
那么就是头文件的位置,你取得不对
[解决办法]
include中指定目录,看看还有没有错误

热点排行