Type def recipe not found: **/build/intermediates/typedefs.txt

本文解决了因retrolambda版本不匹配导致的错误:找不到typedefs.txt文件。通过升级retrolambda版本至3.7.0成功修复了该问题。

今天遇到了这个错:

Error:Execution failed for task ':component_base:transformClassesAndResourcesWithSyncLibJarsForDebug'.
> Type def recipe not found: F:\mvvm\GangRong\component_base\build\intermediates\typedefs.txt


网上找了一堆,先找到解决方案如下:

packagingOptions {
    exclude 'typedefs.txt'
}
测试无效。

只能继续找,后来在https://github.com/evant/gradle-retrolambda/issues/257中找到解决方案。

主要原因是retrolambda版本为3.2.5,改成3.7.0后解决问题

但是别人的项目,版本是3.2.5 在同一台电脑上,他们的没有问题, 我的项目有问题,但是我的项目改了3.7.0 问题得到解决,可能是兼容性问题吧,这个方法对我有用,也希望能够帮助到你


tools/fdtgrep.c:745:5: warning: no previous prototype for ‘utilfdt_read_err’ [-Wmissing-prototypes] int utilfdt_read_err(const char *filename, char **buffp) ^ tools/fdtgrep.c:751:7: warning: no previous prototype for ‘utilfdt_read_len’ [-Wmissing-prototypes] char *utilfdt_read_len(const char *filename, off_t *len) ^ tools/fdtgrep.c:765:7: warning: no previous prototype for ‘utilfdt_read’ [-Wmissing-prototypes] char *utilfdt_read(const char *filename) ^ tools/fdtgrep.c:1005:6: warning: no previous prototype for ‘util_usage’ [-Wmissing-prototypes] void util_usage(const char *errmsg, const char *synopsis, ^ tools/fdtgrep.c:1074:6: warning: no previous prototype for ‘util_version’ [-Wmissing-prototypes] void util_version(void) ^ In file included from tools/lib/hash-checksum.c:1:0: ./tools/../lib/hash-checksum.c:19:5: warning: no previous prototype for ‘hash_calculate’ [-Wmissing-prototypes] int hash_calculate(const char *name, ^ HOSTLD tools/gen_ethaddr_crc HOSTLD tools/fdtgrep HOSTLD tools/dumpimage HOSTLD tools/mkimage AR arch/arm/cpu/built-in.o CC cmd/bootm.o CC cmd/boot.o CC cmd/help.o CC cmd/panic.o CC cmd/version.o CC cmd/blk_common.o AR cmd/arm/built-in.o CC disk/part.o CC cmd/sstar/ufu/g_sstar_dnl.o CC common/init/board_init.o AR drivers/adc/built-in.o CC arch/arm/cpu/armv7/cache_v7.o AR drivers/dma/ti/built-in.o AS arch/arm/lib/vectors.o AS arch/arm/lib/crt0.o AR drivers/dma/built-in.o AS arch/arm/lib/setjmp.o AS arch/arm/cpu/armv7/cache_v7_asm.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/version.o' failed make[4]: *** [cmd/version.o] Error 1 make[4]: *** Deleting file 'cmd/version.o' make[4]: *** 正在等待未完成的任务.... CC arch/arm/mach-sstar/sstar_sys_utility.o AS arch/arm/lib/relocate.o CC arch/arm/mach-sstar/board_common.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/help.o' failed make[4]: *** [cmd/help.o] Error 1 make[4]: *** Deleting file 'cmd/help.o' CC arch/arm/lib/bootm-fdt.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/panic.o' failed make[4]: *** [cmd/panic.o] Error 1 make[4]: *** Deleting file 'cmd/panic.o' CC arch/arm/lib/bootm.o AR drivers/ata/built-in.o CC arch/arm/cpu/armv7/cpu.o AR drivers/axi/built-in.o CC drivers/gpio/gpio-uclass.o CC drivers/block/blk-uclass.o CC drivers/block/blkcache.o CC arch/arm/mach-sstar/iford/chip.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/cpu/armv7/cpu.o' failed make[4]: *** [arch/arm/cpu/armv7/cpu.o] Error 1 make[4]: *** Deleting file 'arch/arm/cpu/armv7/cpu.o' make[4]: *** 正在等待未完成的任务.... CC arch/arm/mach-sstar/iford/board.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/lib/bootm-fdt.o' failed make[4]: *** [arch/arm/lib/bootm-fdt.o] Error 1 make[4]: *** Deleting file 'arch/arm/lib/bootm-fdt.o' make[4]: *** 正在等待未完成的任务.... /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/boot.o' failed make[4]: *** [cmd/boot.o] Error 1 make[4]: *** Deleting file 'cmd/boot.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'common/init/board_init.o' failed make[5]: *** [common/init/board_init.o] Error 1 make[5]: *** Deleting file 'common/init/board_init.o' AS arch/arm/mach-sstar/iford/reset.o scripts/Makefile.build:409: recipe for target 'common/init' failed make[4]: *** [common/init] Error 2 Makefile:1908: recipe for target 'common' failed make[3]: *** [common] Error 2 make[3]: *** 正在等待未完成的任务.... /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/mach-sstar/board_common.o' failed make[4]: *** [arch/arm/mach-sstar/board_common.o] Error 1 make[4]: *** Deleting file 'arch/arm/mach-sstar/board_common.o' make[4]: *** 正在等待未完成的任务.... AR drivers/bus/built-in.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/cpu/armv7/cache_v7.o' failed make[4]: *** [arch/arm/cpu/armv7/cache_v7.o] Error 1 make[4]: *** Deleting file 'arch/arm/cpu/armv7/cache_v7.o' scripts/Makefile.build:268: recipe for target 'arch/arm/mach-sstar/iford/chip.o' failed Makefile:1908: recipe for target 'arch/arm/cpu/armv7' failed make[3]: *** [arch/arm/cpu/armv7] Error 2 make[5]: *** [arch/arm/mach-sstar/iford/chip.o] Error 1 make[5]: *** Deleting file 'arch/arm/mach-sstar/iford/chip.o' make[5]: *** 正在等待未完成的任务.... CC disk/part_dos.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/blk_common.o' failed make[4]: *** [cmd/blk_common.o] Error 1 make[4]: *** Deleting file 'cmd/blk_common.o' CC cmd/sstar/ufu/f_firmware_update.o CC cmd/sstar/ufu/ufu.o CC cmd/sstar/cmd_sstar_common.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/mach-sstar/sstar_sys_utility.o' failed /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 make[4]: *** [arch/arm/mach-sstar/sstar_sys_utility.o] Error 1 make[4]: *** Deleting file 'arch/arm/mach-sstar/sstar_sys_utility.o' scripts/Makefile.build:268: recipe for target 'cmd/bootm.o' failed make[4]: *** [cmd/bootm.o] Error 1 make[4]: *** Deleting file 'cmd/bootm.o' AR drivers/cache/built-in.o CC cmd/sstar/estar.o CC drivers/core/device.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/block/blkcache.o' failed make[5]: *** [drivers/block/blkcache.o] Error 1 make[5]: *** Deleting file 'drivers/block/blkcache.o' make[5]: *** 正在等待未完成的任务.... AR drivers/clk/analogbits/built-in.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/lib/bootm.o' failed make[4]: *** [arch/arm/lib/bootm.o] Error 1 make[4]: *** Deleting file 'arch/arm/lib/bootm.o' Makefile:1908: recipe for target 'arch/arm/lib' failed make[3]: *** [arch/arm/lib] Error 2 CC drivers/crypto/fsl/sec.o AR drivers/crypto/rsa_mod_exp/built-in.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/ufu/g_sstar_dnl.o' failed make[6]: *** [cmd/sstar/ufu/g_sstar_dnl.o] Error 1 make[6]: *** Deleting file 'cmd/sstar/ufu/g_sstar_dnl.o' CC drivers/core/fdtaddr.o make[6]: *** 正在等待未完成的任务.... CC drivers/core/lists.o CC drivers/clk/imx/clk-gate2.o CC cmd/sstar/riu.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'arch/arm/mach-sstar/iford/board.o' failed make[5]: *** [arch/arm/mach-sstar/iford/board.o] Error 1 make[5]: *** Deleting file 'arch/arm/mach-sstar/iford/board.o' scripts/Makefile.build:409: recipe for target 'arch/arm/mach-sstar/iford' failed make[4]: *** [arch/arm/mach-sstar/iford] Error 2 Makefile:1908: recipe for target 'arch/arm/mach-sstar' failed make[3]: *** [arch/arm/mach-sstar] Error 2 /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 CC cmd/sstar/debug.o scripts/Makefile.build:268: recipe for target 'cmd/sstar/cmd_sstar_common.o' failed make[5]: *** [cmd/sstar/cmd_sstar_common.o] Error 1 make[5]: *** Deleting file 'cmd/sstar/cmd_sstar_common.o' make[5]: *** 正在等待未完成的任务.... /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/estar.o' failed make[5]: *** [cmd/sstar/estar.o] Error 1 make[5]: *** Deleting file 'cmd/sstar/estar.o' CC drivers/clk/imx/clk-pllv3.o CC drivers/core/root.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'disk/part.o' failed make[4]: *** [disk/part.o] Error 1 make[4]: *** Deleting file 'disk/part.o' make[4]: *** 正在等待未完成的任务.... AR drivers/clk/tegra/built-in.o disk/part_dos.c:559:13: warning: 'decode_partitionInfo' defined but not used [-Wunused-function] 559 | static void decode_partitionInfo(unsigned char *in, PartitionInfo *partInfo) | ^~~~~~~~~~~~~~~~~~~~ CC drivers/clk/imx/clk-pfd.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/ufu/ufu.o' failed make[6]: *** [cmd/sstar/ufu/ufu.o] Error 1 make[6]: *** Deleting file 'cmd/sstar/ufu/ufu.o' CC drivers/core/uclass.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/block/blk-uclass.o' failed make[5]: *** [drivers/block/blk-uclass.o] Error 1 make[5]: *** Deleting file 'drivers/block/blk-uclass.o' scripts/Makefile.build:409: recipe for target 'drivers/block' failed make[4]: *** [drivers/block] Error 2 make[4]: *** 正在等待未完成的任务.... /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/crypto/fsl/sec.o' failed make[6]: *** [drivers/crypto/fsl/sec.o] Error 1 make[6]: *** Deleting file 'drivers/crypto/fsl/sec.o' scripts/Makefile.build:409: recipe for target 'drivers/crypto/fsl' failed make[5]: *** [drivers/crypto/fsl] Error 2 scripts/Makefile.build:409: recipe for target 'drivers/crypto' failed make[4]: *** [drivers/crypto] Error 2 CC drivers/core/util.o CC drivers/core/device-remove.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/debug.o' failed make[5]: *** [cmd/sstar/debug.o] Error 1 make[5]: *** Deleting file 'cmd/sstar/debug.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/gpio/gpio-uclass.o' failed make[4]: *** [drivers/gpio/gpio-uclass.o] Error 1 make[4]: *** Deleting file 'drivers/gpio/gpio-uclass.o' Makefile:1908: recipe for target 'drivers/gpio' failed make[3]: *** [drivers/gpio] Error 2 CC drivers/core/simple-bus.o CC drivers/core/dump.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/fdtaddr.o' failed make[5]: *** [drivers/core/fdtaddr.o] Error 1 make[5]: *** Deleting file 'drivers/core/fdtaddr.o' make[5]: *** 正在等待未完成的任务.... AR drivers/clk/ti/built-in.o CC drivers/clk/clk-uclass.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/riu.o' failed make[5]: *** [cmd/sstar/riu.o] Error 1 make[5]: *** Deleting file 'cmd/sstar/riu.o' CC drivers/clk/clk_fixed_rate.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/util.o' failed make[5]: *** [drivers/core/util.o] Error 1 make[5]: *** Deleting file 'drivers/core/util.o' CC drivers/clk/clk_fixed_factor.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/simple-bus.o' failed make[5]: *** [drivers/core/simple-bus.o] Error 1 make[5]: *** Deleting file 'drivers/core/simple-bus.o' CC drivers/clk/clk.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'disk/part_dos.o' failed make[4]: *** [disk/part_dos.o] Error 1 make[4]: *** Deleting file 'disk/part_dos.o' Makefile:1908: recipe for target 'disk' failed make[3]: *** [disk] Error 2 CC drivers/clk/clk-divider.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/imx/clk-gate2.o' failed make[6]: *** [drivers/clk/imx/clk-gate2.o] Error 1 make[6]: *** Deleting file 'drivers/clk/imx/clk-gate2.o' make[6]: *** 正在等待未完成的任务.... CC drivers/clk/clk-mux.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/lists.o' failed make[5]: *** [drivers/core/lists.o] Error 1 make[5]: *** Deleting file 'drivers/core/lists.o' CC drivers/clk/clk-gate.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/root.o' failed make[5]: *** [drivers/core/root.o] Error 1 make[5]: *** Deleting file 'drivers/core/root.o' CC drivers/clk/clk-fixed-factor.o /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk_fixed_rate.o' failed make[5]: *** [drivers/clk/clk_fixed_rate.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk_fixed_rate.o' make[5]: *** 正在等待未完成的任务.... /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk_fixed_factor.o' failed make[5]: *** [drivers/clk/clk_fixed_factor.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk_fixed_factor.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk.o' failed make[5]: *** [drivers/clk/clk.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/imx/clk-pfd.o' failed make[6]: *** [drivers/clk/imx/clk-pfd.o] Error 1 make[6]: *** Deleting file 'drivers/clk/imx/clk-pfd.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/dump.o' failed make[5]: *** [drivers/core/dump.o] Error 1 make[5]: *** Deleting file 'drivers/core/dump.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk-gate.o' failed make[5]: *** [drivers/clk/clk-gate.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk-gate.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk-mux.o' failed make[5]: *** [drivers/clk/clk-mux.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk-mux.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/device-remove.o' failed make[5]: *** [drivers/core/device-remove.o] Error 1 make[5]: *** Deleting file 'drivers/core/device-remove.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/imx/clk-pllv3.o' failed make[6]: *** [drivers/clk/imx/clk-pllv3.o] Error 1 make[6]: *** Deleting file 'drivers/clk/imx/clk-pllv3.o' scripts/Makefile.build:409: recipe for target 'drivers/clk/imx' failed make[5]: *** [drivers/clk/imx] Error 2 /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/uclass.o' failed make[5]: *** [drivers/core/uclass.o] Error 1 make[5]: *** Deleting file 'drivers/core/uclass.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk-fixed-factor.o' failed make[5]: *** [drivers/clk/clk-fixed-factor.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk-fixed-factor.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk-divider.o' failed make[5]: *** [drivers/clk/clk-divider.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk-divider.o' /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/core/device.o' failed make[5]: *** [drivers/core/device.o] Error 1 make[5]: *** Deleting file 'drivers/core/device.o' scripts/Makefile.build:409: recipe for target 'drivers/core' failed make[4]: *** [drivers/core] Error 2 /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'drivers/clk/clk-uclass.o' failed make[5]: *** [drivers/clk/clk-uclass.o] Error 1 make[5]: *** Deleting file 'drivers/clk/clk-uclass.o' scripts/Makefile.build:409: recipe for target 'drivers/clk' failed make[4]: *** [drivers/clk] Error 2 Makefile:1908: recipe for target 'drivers' failed make[3]: *** [drivers] Error 2 /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'cmd/sstar/ufu/f_firmware_update.o' failed make[6]: *** [cmd/sstar/ufu/f_firmware_update.o] Error 1 make[6]: *** Deleting file 'cmd/sstar/ufu/f_firmware_update.o' scripts/Makefile.build:409: recipe for target 'cmd/sstar/ufu' failed make[5]: *** [cmd/sstar/ufu] Error 2 scripts/Makefile.build:409: recipe for target 'cmd/sstar' failed make[4]: *** [cmd/sstar] Error 2 Makefile:1908: recipe for target 'cmd' failed make[3]: *** [cmd] Error 2 make[3]: *** wait: 没有子进程。 停止。 makefile:33: recipe for target 'GNUmakefile' failed make[2]: *** [GNUmakefile] Error 2 make[2]: Leaving directory '/home/tp/Project/Iford_IMD00V5.1.1/Iford_IMD00V5.1.1_defconfig/SourceCode/boot' board/uboot/uboot.mk:26: recipe for target 'boot' failed make[1]: *** [boot] Error 1 make[1]: Leaving directory '/home/tp/Project/Iford_IMD00V5.1.1/Iford_IMD00V5.1.1_defconfig/SourceCode/project' makefile:68: recipe for target 'image' failed make: *** [image] Error 2
最新发布
09-24
<think>嗯,用户这次遇到的错误是关于编译U-Boot时出现的权限问题,特别是`scripts/sstar_coding_style_sanitize.py`脚本没有执行权限。从错误信息来看,很多编译步骤失败都是因为这个Python脚本无法执行,导致编译过程中断。 首先,我需要确认用户的问题根源。用户之前已经处理过权限问题,比如`setup_config.sh`和`build_pre_process_config.sh`的权限问题,但这次是另一个脚本。这可能是因为项目中有多个脚本需要执行权限,用户可能没有全部设置,或者某些脚本在后续步骤中被新增但未处理权限。 接下来,用户提供的错误日志显示多个编译步骤失败,如`cmd/version.o`、`cmd/help.o`等,都是因为`/bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够`。这说明该Python脚本确实缺少执行权限。用户需要为这个脚本添加执行权限,使用`chmod +x`命令。 另外,用户可能没有注意到这个脚本是否存在其他问题,比如shebang行是否正确。如果脚本没有指定解释器,可能需要添加`#!/usr/bin/env python3`这样的行,确保系统能正确调用Python解释器。但根据错误信息,问题主要是权限,所以可能不需要修改脚本内容,除非后续出现其他错误。 用户可能还希望了解为什么这个脚本会在多个编译步骤中被调用。这可能是因为该脚本是代码风格检查的一部分,在每个源文件编译前运行,确保代码符合项目规范。因此,权限问题会影响整个编译流程,导致大量错误。 解决方案方面,首先需要为`sstar_coding_style_sanitize.py`添加执行权限。然后,用户可能需要检查其他相关脚本是否有类似问题,确保所有需要执行的脚本都有正确的权限。此外,用户可能需要确认Python环境是否正确安装,避免出现其他运行时错误。 最后,用户可能需要了解如何预防此类问题,比如在添加新脚本时自动设置权限,或者在Makefile中检查权限的步骤。这可以作为相关问题的一部分,帮助用户更好地维护项目环境。 </think>问题出现在 U-Boot 编译阶段,核心错误信息为: ``` /bin/sh: ./scripts/sstar_coding_style_sanitize.py: 权限不够 scripts/Makefile.build:268: recipe for target 'xxx.o' failed ``` --- ### 原因分析 1. **代码风格检查脚本权限不足** `scripts/sstar_coding_style_sanitize.py` 缺少执行权限(`x`),导致编译时无法调用该脚本进行代码风格检查。 2. **脚本依赖未满足** - 脚本可能未指定 Python 解释器(如缺少 `#!/usr/bin/env python3`)。 - 系统未安装 Python 或依赖库(如 `pylint`、`black` 等)。 3. **编译规则强制触发脚本** - `Makefile.build` 中定义的编译规则强制调用该脚本,权限问题导致所有依赖它的编译步骤失败。 --- ### 解决方案 1. **为脚本添加执行权限** ```bash chmod +x /home/tp/Project/Iford_IMD00V5.1.1/Iford_IMD00V5.1.1_defconfig/SourceCode/boot/scripts/sstar_coding_style_sanitize.py ``` 2. **验证脚本可执行性** - 检查脚本首行是否包含 Python 解释器声明: ```python #!/usr/bin/env python3 ``` - 手动运行脚本测试: ```bash ./scripts/sstar_coding_style_sanitize.py --help ``` 3. **安装 Python 依赖(如需要)** ```bash sudo apt install python3 python3-pip pip3 install pylint black ``` 4. **临时禁用代码风格检查(调试用)** - 修改 `Makefile.build`,注释或删除触发脚本的规则: ```makefile # cmd/%.o: %.c # ./scripts/sstar_coding_style_sanitize.py $< && $(CC) $(CFLAGS) -c $< -o $@ ``` 5. **批量修复所有脚本权限(预防性操作)** ```bash find /home/tp/Project/Iford_IMD00V5.1.1/Iford_IMD00V5.1.1_defconfig/SourceCode/boot/scripts -type f -name "*.py" -exec chmod +x {} \; ``` --- ### 相关问题 1. 如何为 Python 脚本添加执行权限并确保其可运行? 2. 编译嵌入式项目时,如何排查代码风格检查工具的依赖问题? 3. 如何修改 Makefile 以临时禁用代码风格检查? 4. 为什么缺少 Python 解释器会导致编译失败? 5. 如何批量修复项目中所有 Python 脚本的执行权限?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值