1
いくつかのチュートリアルがそこ#include
以下のヘッダしかし Linuxカーネルモジュール - 冗長が含ま
#include <linux/kernel.h>
#include <linux/init.h>
は、モジュールはそれらなしでうまく動作することがあります。単なる
linux/module.h
が含まれています。
2つが必要ですか?
いくつかのチュートリアルがそこ#include
以下のヘッダしかし Linuxカーネルモジュール - 冗長が含ま
#include <linux/kernel.h>
#include <linux/init.h>
は、モジュールはそれらなしでうまく動作することがあります。単なる
linux/module.h
が含まれています。
2つが必要ですか?
starkと言われていますが、いくつかの特定のケースではおそらく不要です。いくつかのチュートリアルでそれを見つけたら、それはおそらくライターがヘッダーをコピー/ペーストしてしばらく時間を取るためだったでしょう。
#include <linux/init.h> #include <linux/kobject.h>
とkobject.h
:
#include <linux/kernel.h>
彼らは増加のようないくつかのマイナスの影響を与える可能性があるのでしかし、未使用の#includeを削除する必要がありますmodule.h
を見てみると
コンパイル時間とメモリ使用量。
Include what you useというツールは、人々が未使用の#includeを追跡するのに役立ちます。
多くの場合、ヘッダファイル間に依存関係があるので、 'module.h'には他のヘッダファイルが含まれています。しかし、あなたはそれに頼るべきではなく、すべての必要なヘッダーを含めるべきです。 – Barmar
コンパイルせずにコンパイルすると、必要ではありませんでした。 – stark