私には大きな問題があります。プロジェクト全体で使用される共通のライブラリがあります。このライブラリは と を集中的に使用boost.spirit
しboost.fusion
ます。残念ながら、ライブラリは約です。サイズは700MB。すべてのboost.spirit
重いコードが使用され、うまく機能します。出力サイズを縮小するには、どのような手順を実行できますか? どのテンプレートのインスタンス化がスペースの大部分を浪費しているかを判断するのに役立つツールはありますか?
最初に、すべてのスピリット対応コードを cpp ファイルに移動することにしました。次に、さまざまなコンパイラ フラグを試して、サイズを最適化します。他に何をすべきかわかりません。
アップデート(詳細)
GNU ツールチェーンを使用しています。巨大なライブラリは、実際には静的ライブラリです。この 700Mb ライブラリを使用する実行可能ファイルのサイズは 200Mb です。コードの少なくとも半分は *.h ファイルにあります。一部のboost.spirit
文法 (非常にテンプレートが多いもの) も *.h ファイルにあります。
乾杯!