カーネルのコンパイル後に.dファイルを保持する方法は?

カーネルのコンパイル後に.dファイルを保持する方法は?

サードパーティのカーネルモジュールをコンパイル中です。ビルドシステムは/usr/src/linux-headers-[version](カスタムカーネルchroot)に入り、そこでmake実行されます。

コンパイルにどのファイル(ソースファイルとヘッダーファイル)が使用されたのか、どのファイルが使用されていないのかを知りたいです。標準では、コンパイルされたソースごとにファイルを生成してscripts/Makefile.build使用*.dしたいのですが...削除済み短期間の処理後。 (これはrule_cc_o_cの定義ですMakefile.build。)

標準のビルドシステムを最小限に変更しながらこれらのファイルを収集する方法はありますか?

ベストアンサー1

試してみてくださいlibtrashcan。コンパイルしてインストールしたら、ライブラリをプロセスにプリロードします。

たとえば、次はテストファイルを作成して削除しようとしますが、libtrashcanunlinkシステムコールが移動して置き換えられるため、ファイルは次に終了します~/Trash

export LD_PRELOAD=/usr/local/lib/libtrash.so.3.3
touch testfile
rm testfile

おすすめ記事