Задать вопрос
@redcap152

Почему возникает ошибка при компиляции?

Здравствуйте! Пытаюсь скомпилировать модуль для ядра Linux , при компиляции получаю вот это:
root@redcap52:~/tcpsecrets# sudo make
make -C /lib/modules/3.16.0-4-amd64/build M=/root/tcpsecrets modules
make[1]: *** /lib/modules/3.16.0-4-amd64/build: No such file or directory.  Stop.
Makefile:8: recipe for target 'default' failed
make: *** [default] Error 2

Первые 8 строк такие:
#include <linux/init.h>
#include <linux/module.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/kallsyms.h>
#include <linux/cryptohash.h>
#include <linux/ftrace.h>
#include <linux/version.h>
#include <net/tcp.h>
#include "system_map.inc"

ОС: Debian Jessie 8.5
Ядро: 3.16.0-4-amd64

У меня в папке /lib/modules/3.16.0-4-amd64/ нет директории (или файла) build

После создания папки build ошибки такие:

root@redcap52:~/tcpsecrets# sudo make
make -C /lib/modules/3.16.0-4-amd64/build M=/root/tcpsecrets modules
make[1]: Entering directory '/lib/modules/3.16.0-4-amd64/build'
make[1]: *** No rule to make target 'modules'.  Stop.
make[1]: Leaving directory '/lib/modules/3.16.0-4-amd64/build'
Makefile:8: recipe for target 'default' failed
make: *** [default] Error 2
  • Вопрос задан
  • 3138 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
gbg
@gbg Куратор тега Linux
Любые ответы на любые вопросы
Пакет kernel-devel поставьте.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы