Поскольку заголовки необходимы для работы с криптоалгоритмами, предоставляемыми ядром, я установил linux- заголовки-4.4.0-1-amd64
.
Однако при этом не добавлялись такие файлы, как crypto.h
, module.h
и init.h
, в мой / usr / include / каталог linux
.
После поиска в Google я узнал, что были более старые версии linux, в которых использовался пакет linux-kernel-headers
, содержащий все необходимые заголовки. Однако, когда я попытался установить, оказалось, что apt
заменил его пакетом linux-libc-dev
, который уже установлен и не содержит необходимых заголовков.
Итак, вопрос в том, что мне следует установить, чтобы получить определенные заголовки?
Моя ОС - Debian Stretch
.
Вы уже установили необходимые пакеты ( linux-headers-4.4.0-1-amd64
и его зависимости, linux-headers-4.4.0-1-common
), но заголовки попадают не в / usr / include / linux
, а в / lib / modules / $ (uname -r) / source / include / linux
.
Как указывает Жиль , эти заголовки предназначены только для использования ядром; они доступны через / lib / modules
, так что модули вне дерева могут быть легко построены. Поскольку вы искали файлы заголовков по имени, я предположил, что вы собираетесь использовать криптографический API в контексте ядра, но если нет, вам следует использовать криптографическую библиотеку в пользовательском пространстве.