3

Qtと静的にリンクしているので、リンカーまたはその他のツールで、未使用のバイナリコード(Qtライブラリから)を最終的な実行可能ファイルに追加することを回避できますか?10MBのQtライブラリコードをすべて使用しているとは思いません。

4

1 に答える 1

4

ある時点でQtライブラリを自分でコンパイルし、g ++を使用している場合は、リンク時間最適化(LTO)オプションを使用してみてください。これを行うには、すべてのg++呼び出しに-fltoを追加します。これにより、g ++は、ソースに対応するオブジェクトファイルにいわゆるGIMPLEコードを追加できます(したがって、完全にはコンパイルされません)。リンク手順では、-fwhole-programまたは-fuse-linker-pluginを追加する必要があります。次に、gccはGimpleコードを読み取り、プログラム全体を最適化します。これにより、未使用のコードを取り除くことができるはずです。しかし、私はこれがあなたのために働くことを保証することはできません。

于 2012-06-19T08:49:39.843 に答える