make: *** 没有规则可制作目标“dtbs_clean”。 停止。
时间: 2023-07-12 21:28:03 浏览: 95
如果你在执行"make dtbs_clean"命令时出现"make: *** 没有规则可制作目标“dtbs_clean”。 停止。"的错误提示,这意味着你的内核源代码可能不支持该命令。
对于不支持"make dtbs_clean"命令的内核源代码,你可以尝试使用以下命令清除编译生成的设备树文件:
```
make ARCH=<architecture> clean
```
其中,"<architecture>"指定架构类型,例如arm、arm64等。
执行以上命令后,你可以使用以下命令重新编译设备树文件:
```
make ARCH=<architecture> dtbs
```
这将重新编译所有设备树文件。如果只需要编译特定的设备树文件,请指定设备树文件的名称,例如:
```
make ARCH=<architecture> dtbs -f <device-tree-file.dts>
```
希望这些信息能够帮助你清理设备树编译。
相关问题
make: *** No rule to make target 'dtbs'. Stop.
这个错误通常是由于缺少相关文件或者路径不正确导致的。以下是一些可能的解决方法:
1. 确认你的路径是否正确,特别是在使用交叉编译时,需要确保交叉编译工具链的路径正确。
2. 确认你的文件是否存在,如果缺少相关文件,需要将其添加到正确的路径中。
3. 确认你的Makefile是否正确,特别是在使用内核模块时,需要确保Makefile中的路径和文件名正确。
4. 确认你的内核配置是否正确,有时候缺少某些配置也会导致这个错误。
以下是一个可能的解决方法:
```shell
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j4 Image dtbs
```
这个命令将会编译内核镜像和设备树文件。如果你需要编译其他的目标,可以将`Image dtbs`替换为其他的目标。
Makefile:1398: recipe for target 'dtbs' failed make: *** [dtbs] Error 2 make: *** 正在等待未完成的任务.... gcc -o scripts/mod/modpost scrip
这是一个 Makefile 编译错误,其中一个目标 dtbs 编译失败。它可能是由于编译器找不到相关的依赖项或者源代码文件出现错误导致的。
你可以尝试检查 Makefile 文件中的依赖关系、文件路径和编译器选项是否正确。另外,你也可以检查是否缺少某些依赖库或者源代码文件。
如果你无法解决这个错误,可以尝试在编译命令中添加 -k 选项,这样会忽略错误并继续编译其他目标。