大きな静的ライブラリ(.lib)ファイルに問題があり、テンプレートクラスの無差別な使用からコードが肥大している疑いがあります。ライブラリのシンボルを分析して、どれがファイルサイズの大部分を占めているかを確認したいと思います。ライブラリファイル内のシンボルを解析するためのユーティリティ
私の実行ファイルをこのライブラリとリンクすると、出力結果はサイズに敏感です(約20Mb)ので、リンカは明らかに多くの冗長シンボルを削除しています。
私はdumpbinを使ってシンボルとヘッダを生成することができますが、問題のライブラリがかなり大きく(900Mb)、このダンプはユーティリティなしではほとんど使用できないことがわかりましたそれを解析し報告するためのものです。
明らかに私は自分自身でこれを書くことができましたが、誰もがこれに利用できるフリーウェアを推薦できるかどうか疑問に思っていましたか?
私にリンカによって取り除かれているすべてのシンボルが表示されますか? – StevieG
あなたはそれが何を意味するかわからない。各機能の開始位置と大きさを表示します。これはあなたが望むものではありませんか? –
私が理解しているように、リンカは使用されていないすべての記号を取り除くので、実際に実行可能ファイルよりも多くのシンボルが.libファイルにあります(私が間違っていない限り)。実行可能ファイルだけでなく、.libファイル内のすべてのシンボルを参照する必要があります。リンク時にリンクマップを作成すると、これが表示されるか、結果の.exeによって使用されるマップのみが表示されるのだろうか – StevieG