次の要件を持つプログラムを作成する必要があります。
- スタンドアロン (インストールなし)
- サイズに最適化
- Windows XP 互換
問題は、たとえば#include <d3dx9.h>
、単一の関数を追加して使用すると、実行可能サイズが 370kb 増加することです。
ライブラリのいくつかの関数を使用するだけで、実行可能ファイルに完全にリンクされない方法/ツールはありますか?
次のことを試しましたが成功しませんでした
- リリースモード
- プログラム全体の最適化
- サイズを最小化 (/O1)
- 小さいコード (/O) を優先する
- /OPT:REF
- /OPT:ICF
- リンク タイム コード生成 (/LTCG) を使用する
これはテスト コードです (私は 2004 年 10 月のバージョンの d3dx を使用しており、ここにある静的リンクを許可していますhttps://github.com/kavika13/jumpmanzero-thirdparty )
#pragma comment (lib, "d3dx9.lib")
#include <d3dx9.h>
int main() {
D3DXCreateSphere(0, 0, 0, 0, 0, 0);
return 0;
}
注: 同じライブラリのより多くの機能を使用すると、同じ ~370Kb 増加することに注意してください。