微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux-kernel – 编译Linux内核错误xt_CONNMARK.h

我正在尝试使用内置于内核中的几个模块来编译 Linux 2.6.32.6内核,这是出于非常具体的原因.我在NFS上包含了根文件系统,试图通过局域网PXE引导我自己的自定义救援Live-CD.在包含ROOT_NFS所需的依赖项和模块之后,我尝试使用make bzImage编译Linux内核.当这运行我得到错误
make[4]: *** No rule to make target './linux-2.6.32.6/include/linux/netfilter/xt_CONNMARK.h',needed by './linux-2.6.32.6/usr/include/linux/netfilter/.install'. Stop.

现在我已经尝试在配置中禁用Netfilter模块,并尝试查找任何需要Netfilter的依赖项,但此错误仍然存​​在.

任何解决错误的建议都会很棒.

解决方法

这很可能是因为您从源树中丢失了一些文件,因为它们是通过不区分大小写的文件系统传输的. Linux源代码树中大约有15个不同的文件,它们的命名方式相同,但大小写不同.对于构建Linux内核的人来说,这通常不是问题,因为所有合理的文件系统都区分大小写.

对于那些好奇的人来说,这种方式的文件都在netfilter树中 – 例如,参见v3.0中的include / linux / netfilter / xt_CONNTRACK.h与include / linux / netfilter / xt_conntrack.h.

所以,那些文件确实存在,但你丢失了它们.获取一个新的源代码树,将其解压缩到区分大小写的文件系统上,您将不再有此错误.或者,如果您害怕丢失对树的修改,则从“原始”源树或github mirror of the kernel复制文件 – 它们很可能不会从您正在编译的版本中的版本更改.

原文地址:https://www.jb51.cc/linux/393422.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐