utils

find-extlib - 外部関数の呼び出しをリストアップする

目的 あるプログラムからの、外部ライブラリの関数呼び出しをチェックしたい。たとえば、自作プログラムが多数のオブジェクトから出来ているとして、その中で libc なり libm なりを参照している。 これらをリストアップして、依存を減らしたり、省サイズ化…

grep-ccopt - Cコンパイル時の引数にgrepする(特定コンパイラのみ)

目的 とあるコンパイラ*1が、コンパイル時の引数をオブジェクトファイルの特定セクション*2に埋め込んでいる。 これにgrepをかけることで、コンパイル引数が意図通りかどうか、チェックしたい。 結果 特定セクションを取り出してgrepするスクリプトを作成。…

lsso - 実行ファイルが必要とする共有ライブラリをチェックする(特にクロスコンパイル環境で)

目的 ある実行ファイルの動作に、どの共有ライブラリが必要かを把握したい。 ストレート環境であれば /bin/ldd を使えば良い(BINARY HACKS, HACK #7 を参照)のだが、クロス環境だと一々実行するのが面倒臭い。 一括で、必要なライブラリ一覧を得る方法は無い…

avgtime - コマンドの実行時間を手軽に計測するユーティリティ

目的 コマンドの実行時間を手軽に測りたい。 処理時間が短い場合のために、コマンドを複数回まとめて実行した結果を計測する システム状態によるバラツキを考慮して、複数回の試行の平均を取る(その際、最大値と最小値を除く) 結果 上記仕様を満たすユーテ…

c-effective Cソース中で、実際に使用されるコードを判別する(自作編)

目的 #ifdefが複雑にネストしているCソースファイル中で、どの部分が有効かを簡単に調べたい。 背景と動機については id:taiyo:20080202#p1 などを参照。 Cプリプロセスの部分適応ツールについては昨日(id:taiyo:20080204#p1)試したので、今回はそれ以外に…

cpp-tools - Cソース中の大量のifdefを読みやすくしたい(ツール探索編)

目的 #ifdefが複雑にネストしているCソースファイル中で、どの部分が有効かを簡単に調べたい。 背景と動機については id:taiyo:20080202#p1 などを参照。 結果 C FAQ(Question 10.18)で紹介されている3つのツールと、手元にあったツール1つを試した。 名前 …