Мы пытаемся создать часть программного обеспечения, которая требует источника ядра, а не только заголовков. Итак, мы загрузили исходный код ядра через centos src rpm.
Однако autoconf.h отсутствует.
Мы пытались
Поместите .config на место (скопировал один из / boot).
запустить
make oldconfig
Так что же создает файл autoconf.h? Нужно ли нам собирать ядро?
Ответы:
Файл
include/generated/autoconf.h
генерируется наmake prepare
шаге. Если вы пытаетесь собрать модуль ядра, вам также потребуетсяmake scripts
шаг:Обычно ядро поставляется с пакетом заголовков, вы пробовали установить его первым? Для CentOS попробуйте установить
kernel-devel
пакет. Подробности можно найти на http://wiki.centos.org/HowTos/I_need_the_Kernel_Sourceисточник
/boot
(сравните с,uname -r
чтобы выбрать правильный)./lib/modules/$(uname -r)/build/.config
(build
обычно символические ссылки/usr/src/linux-$(uname -r)
), которые используют другие/boot/config-$(uname -r)
(например, Ubuntu, Debian и, очевидно, CentOS). Если включено во время компиляции, оно также доступно из/proc/config.gz
.Файл
autoconf.h
автоматически генерируется в процессе сборки из.conf
файла. Многие исходные файлы ядра используютautoconf.h
.источник