2

シンプルな Hello World プログラム D 実行可能ファイルのサイズが大きく、約 9.2 MiB であることがわかりました。gdc -4.8 コンパイラを使用しています。これは機能ですか、それとも何らかのバグですか?

すべての応答に感謝します!

4

1 に答える 1

3

標準ライブラリのデバッグ バージョンに対して静的にリンクしていると思います。

まず、実行可能ファイルのサイズは、標準ライブラリの動的リンクと静的リンクの使用によって異なります。実行可能ファイルを静的にリンクすると、デバッグ情報がサイズのもう 1 つの要因になります。

数字で(手元にgdcがありません):

  • ldc2 でコンパイル、静的にリンク: 315KiB
  • デバッグ情報を含む ldc2 でコンパイル、静的にリンク: 2.9MiB
  • dmd でコンパイル、動的にリンク: 51KiB
  • デバッグ情報を含む dmd でコンパイル、静的にリンク: 77KiB

私の知る限り、gdc は実行可能サイズにも寄与する -gc-section を使用/サポートしていません。

于 2015-07-12T11:22:14.147 に答える