私のkali linuxに問題があります。 3つのヘッダーファイルを含む単純なプログラムを作成したいと思います。
#include <linux/input.h>
#include <stdio.h>
#include <fcntl.h>
gcc(デフォルトのコンパイル設定)でコンパイルしようとすると、次のエラーが次々に発生します。
/usr/include/linux/cache.h:5:10: fatal error: uapi/linux/kernel.h: No such file or directory
5 | #include <uapi/linux/kernel.h>
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
次に、uapi / linux /ディレクトリを見つけて/ usr /includeにコピーして、コンパイラが見つけることができます。
/usr/include/linux/cache.h:5:10: fatal error: uapi/linux/kernel.h: No such file or directory
5 | #include <uapi/linux/kernel.h>
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
ディレクトリを複数回コピーしようとした後、最終的に/usr/include
"u32"、 "u16"の型名がわからないというエラーが発生しました(一部のヘッダーで定義する必要があります)。うまくいかないので、ヘッダーを直接混乱させたくありません。では、このヘッダーをコンパイルするにはどうすればよいですか?
答え1
必要なlinux-headers
パッケージがインストールされていない可能性があります。カーネルバージョンと同じでなければなりません。
Kali LinuxはDebianテストに基づいており、一部は不安定または実験的であるため、バグや安定性の問題が発生する可能性があります。