Summary: | kernel-build.eclass: kernel build system optionally requires dev-lang/perl for some config options | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Alexander Zubkov <zubkov318> |
Component: | Current packages | Assignee: | Distribution Kernel Project <dist-kernel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | boris.staletic, chris, nowa, zubkov318 |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build log
gentoo-kernel build log erroring because perl is not installed emerge --info from bstaletic diff between kernel config for versions 6.10.6 and 6.10.7 |
Description
Alexander Zubkov
2024-04-21 21:58:27 UTC
Please can you post a full build.log and the output of emerge --info Created attachment 891309 [details]
build log
"emerge --info" is there in the original message. Is there reason for the full kernel build log? I provided a part where it clearly failed while trying to use perl. But anyway, attached the log too. Stumbled onto this myself. The lines leading to the error are # GEN lib/oid_registry_data.c perl /var/tmp/portage/sys-kernel/gentoo-kernel-6.10.7/work/linux-6.10/lib/build_OID_registry /var/tmp/portage/sys-kernel/gentoo-kernel-6.10.7/work/linux-6.10/include/linux/oid_registry.h lib/oid_registry_data.c /bin/sh: 1: perl: not found make[4]: *** [/var/tmp/portage/sys-kernel/gentoo-kernel-6.10.7/work/linux-6.10/lib/Makefile:336: lib/oid_registry_data.c] Error 127 make[3]: *** [/var/tmp/portage/sys-kernel/gentoo-kernel-6.10.7/work/linux-6.10/scripts/Makefile.build:485: lib] Error 2 But I will attach emerge --info and the build log. Created attachment 901691 [details]
gentoo-kernel build log erroring because perl is not installed
Created attachment 901692 [details]
emerge --info from bstaletic
I think this requirement for perl is a result of your savedconfig. Do you happen to know which of your config options adds this requirement? I'm not sure we want to add a dependency on perl for everyone if it is not required by our default configuration. > Is there reason for the full kernel build log? I provided a part where it
> clearly failed while trying to use perl. But anyway, attached the log too.
The build log is essential because we need to know what happened in the prepare and configure phases to eventually result in a failure in the compile phase
Created attachment 901712 [details, diff]
diff between kernel config for versions 6.10.6 and 6.10.7
That makes sense.
I have never had to have perl installed when building the kernel until the latest release.
Looking at the build log, it expectedly says that it is using
/etc/portage/savedconfig/sys-kernel/gentoo-kernel
for the config.
That one was done manually, when 6.6.35 was brand new.
Since I've only now stumbled across this perl thing, it has to be something in the diff between 6.10.6 and 6.10.7.
I'm uploading the diff between those two kernel configs.
Looking at the build log and your diff I suspect the option causing the perl requirement is CONFIG_CRYPTO_POLY1305. Can you confirm this? Actually, CONFIG_CRYPTO_POLY1305 is part of our default config, so we should BDEPEND on perl The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=660b9cf9f08fd27fca32f1bd1bd8e95ee7a635bc commit 660b9cf9f08fd27fca32f1bd1bd8e95ee7a635bc Author: Andrew Ammerlaan <andrewammerlaan@gentoo.org> AuthorDate: 2024-08-30 19:41:18 +0000 Commit: Andrew Ammerlaan <andrewammerlaan@gentoo.org> CommitDate: 2024-08-30 19:43:32 +0000 kernel-build.eclass: BDEPEND on dev-lang/perl Some config options (that we enable by default, e.g. CONFIG_CRYPTO_POLY1305) cause perl scripts to be run during the build. Closes: https://bugs.gentoo.org/930390 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org> eclass/kernel-build.eclass | 1 + 1 file changed, 1 insertion(+) For the record, disabling CONFIG_CRYPTO_LIB_POLY1305 is not enough. The error still looks the same. When I confirm which part of the config was the problem, I will report back. Huh... I went all the way back to my 6.10.6 kernel config. Still the kernel build system wanted to invoke perl. |