/LARGEADDRESSAWARE (大きいアドレスの処理)

/LARGEADDRESSAWARE[:NO]

解説

/LARGEADDRESSAWARE オプションは、アプリケーションが 2 ギガバイトを超えるアドレスを処理できることをリンカーに伝えます。 64 ビット コンパイラでは、このオプションは既定で有効になります。 32 ビット コンパイラでは、リンカー行で /LARGEADDRESSAWARE が指定されていない場合、/LARGEADDRESSAWARE:NO が有効になります。

アプリケーションが /LARGEADDRESSAWARE とリンクされていた場合、その効果に対する情報が DUMPBIN/HEADERS に表示されます。

64 ビット アプリケーションを /LARGEADDRESSAWARE:NO にリンクすることは推奨されません。使用できるアドレス空間が制限され、アプリがメモリを使い果たすとランタイム エラーが発生する可能性があるからです。 また、エミュレーション ランタイムが 4 GB の仮想アドレス空間を予約しようとするため、x64 アプリが ARM64 システム上で実行できなくなる可能性があります。 アプリが /LARGEADRESSAWARE:NO にリンクされている場合、それほど多くのアドレス空間を割り当てることができないため、アプリは起動しません。

Visual Studio 開発環境でこのリンカー オプションを設定するには

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、Visual Studio での C++ コンパイラとビルド プロパティの設定に関する記事を参照してください。

  2. [構成プロパティ]>[リンカー]>[システム] プロパティ ページを選択します。

  3. [大きいサイズのアドレス] プロパティを変更します。

このリンカーをコードから設定するには

関連項目

MSVC リンカーのリファレンス
MSVC リンカー オプション