【问题标题】:Linux compilation throwing error header file errorLinux编译抛出错误头文件错误
【发布时间】:2021-07-23 23:53:23
【问题描述】:

我正在从https://github.com/liva/minimal-linux 编译这段代码(minimul linux 内核)

我收到> make[1]: *** [Kbuild:42: include/generated/timeconst.h] Error 127

基本上是它的make 错误。可能是timeconst.h 中的错误,也可能是其丢失的文件。

所以我的问题是如何在minimul-linux-master(从上面的链接下载)文件夹中找到文件以及如何在编译代码时调试以获取更多信息。

你可以看到make 显示的内容完全没用。而且我不知道为什么会导致错误。没有任何其他错误,所以我假设所有错误或单个错误都在 timeconst.h 中。

这是终端输出。

....

HOSTCC 脚本/mod/sumversion.o

HOSTLD arch/x86/tools/relocs

HOSTCC 脚本/mod/file2alias.o

UPD 包含/config/kernel.release CHK 包含/生成/utsrelease.h

UPD 包含/生成/utsrelease.h

CC 内核/bounds.s

CHK 包含/生成/timeconst.h

/bin/sh: 1: bc: 未找到

make[1]: *** [Kbuild:42: include/generated/timeconst.h] 错误 127

make[1]: *** 等待未完成的工作......

make: *** [Makefile:1054: prepare0] 错误 2

make: *** 等待未完成的工作......

HOSTLD 脚本/mod/modpost

我在主机上:5.10.0-kali3-amd64 机器是x​​86-64

【问题讨论】:

  • 回复。 "/bin/sh: 1: bc: not found":你安装了bc吗?
  • @G.M. "/bin/sh: 1: bc: not found" 是什么意思,我认为错误在 timeconst.h 中,例如 I am getting > make[1]: *** [Kbuild:42: include/generated/timeconst.h] Error 127 会引发 127 个错误。什么是bc
  • 第一个错误是"/bin/sh: 1: bc: not found",所以构建过程正在尝试(我认为)运行bc(一种任意精度的计算器)。
  • @G.M 所以你认为这两个错误的原因是一样的。
  • 99.99% 的编程时间,第一个错误是最重要的。一旦第一件事出错,更多的事情开始出错,当你遇到最后一个错误时,它通常只是一些级联错误的副作用。如果您遇到错误,请从 TOP 开始,然后逐步向下。不要从底部开始,然后一路向上。但特别是,作为 G.M.说,这些来自 make 的消息不是你的 makefile 中的错误。他们告诉你它调用的某些命令失败了。您必须找出发生这种情况的原因。

标签: c linux makefile compilation kernel


【解决方案1】:

我通过将我的 KBuild 与给定链接中定义的 KBuild 进行比较来解决了这个问题。

https://android.googlesource.com/kernel/msm/+/db248780101f2ca2bc3c02598917e88dfdce3207/Kbuild

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多