When trying to go through the compilation and install process of the Linux kernel (genkernel and manual method), install will fail when FIRMWARE_IN_KERNEL is enabled.
Steps to Reproduce:
1. Try to do a standard kernel install
The error message will look like this:
make: *** No rule to make target `/lib/firmware/./', needed by `/lib/firmware/ti_3410.fw'. Stop.
make: *** [_modinst_post] Error 2
The kernel should install fine.
The problematic option FIRMWARE_IN_KERNEL seems to be enabled by default.
I'm not the only one affected:
How to solve: Set FIRMWARE_IN_KERNEL = n
FIRMWARE_IN_KERNEL is located in:
Symbol: FIRMWARE_IN_KERNEL [=n]
| Type : boolean
│ Prompt: Include in-kernel firmware blobs in kernel binary
│ Defined at drivers/base/Kconfig:80
│ Depends on: FW_LOADER [=y]
│ -> Device Drivers
│ -> Generic Driver Options
│ -> Userspace firmware loading support (FW_LOADER [=y])
emerge --info: http://codepad.org/V4miMz3T
(In reply to comment #0)
> emerge --info: http://codepad.org/V4miMz3T
Please attach that or paste it in a comment.
Created attachment 291975 [details]
This bug pertains to a genkernel config default. Reassigning to proper team.
i experimented this issue in every first installation of the kernel (when i install my system from scratch). To easy solve this issue just do:
# mkdir /lib/firmware
from root, because that dir seems to be not present by default
PS This bug is not related to genkernel, because i don't use it at all
Ugh, seems an exception when there is no firmware built that he directory isn't made; we've got two option here:
1. File it upstream that the build system creates the directory.
2. keepdir /lib/firmware/
We might be able to temporarily do (2) while waiting for upstream to resolve (1).
mpagano: What do you think about this?
I ran make firmware_install on a chroot without the /lib/firmware directory and it was created.
How can I reproduce this?