Linux编译出错,什么原因?100分奉上!

嵌入式开发 2011-08-16 09:11:14
大家好:
我在进行Linux内核编译时,出现下面错误,是什么原因啊,请高手指教一下:
[root@localhost linux]# make menuconfig
HOSTCC scripts/basic/fixdep
In file included from /usr/include/sys/socket.h:35,
from /usr/include/netinet/in.h:24,
from /usr/include/arpa/inet.h:23,
from scripts/basic/fixdep.c:117:
/usr/include/bits/socket.h:304:24: asm/socket.h: 没有那个文件或目录
make[1]: *** [scripts/basic/fixdep] 错误 1
make: *** [scripts_basic] 错误 2
[root@localhost linux]#

谢谢了!
...全文
196 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
嵌入式开发 2011-09-23
  • 打赏
  • 举报
回复
这个问题先不管了,换了一个新的系统,重新学习吧,结贴散分,谢谢大家了!如果谁知道答案,还可以继续补充啊,学习linux真不是一条好走的道路啊!!!
jackyjkchen 2011-08-16
  • 打赏
  • 举报
回复
内核源码貌似不全
louyong0571 2011-08-16
  • 打赏
  • 举报
回复
感觉你的目录结构是不是不完整啊?
ninetwoseven 2011-08-16
  • 打赏
  • 举报
回复
我看了 from /usr/include/sys/socket.h:35,
from /usr/include/netinet/in.h:24,
from /usr/include/arpa/inet.h:23,
from scripts/basic/fixdep.c:117:
/usr/include/bits/socket.h:304:24:

这这些地方的代码都是#include <linux/socket.h>
缺少这个头文件

你可以在linux/include文件夹下面看看有无socket.h
如果没有你可以自己添加进去,或重新自己下个内核


joan8363 2011-08-16
  • 打赏
  • 举报
回复
/usr/include下的asm等链接没指向要升级的内核?

cd /usr/include

ln -s /urs/src/.../include/asm-i386 asm
ln -s /usr/src/.../include/linux linux
ln -s /usr/src/.../include/scsi scsi
嵌入式开发 2011-08-16
  • 打赏
  • 举报
回复
继续加分,哪位知道,告诉一下!
Wenxy1 2011-08-16
  • 打赏
  • 举报
回复
也许是make menuconfig配置不对,或者别的问题。
freetstar 2011-08-16
  • 打赏
  • 举报
回复
感觉是链接的问题。。
嵌入式开发 2011-08-16
  • 打赏
  • 举报
回复
昨晚我以为是链接问题,重定义一遍链接后发现还是一样。在ln -s /usr/src/.../include/linux linux指向的linux中也找到了这个socket.h,不知道为什么它不认。今晚再下一个新的内核试一下,希望能成功~
cqbamboo 2011-08-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jackyjkchen 的回复:]

内核源码貌似不全
[/Quote]
+1

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧