msvc2017x64 コンパイラがプロジェクトをコンパイルし、「コンパイラにヒープ領域が不足しています」というエラーが報告される エラー解決策

        日常的なソフトウェア開発では、プロジェクトが大きくモジュール数も多いため、コンパイル時に「コンパイラのコンパイル領域が不足しています」というエラーが報告され、従来の方法では問題を解決できません。opengl モジュールは大量のメモリを消費します


試行
試行 1
  ルーチンに従って、pro のリソース割り当てを増やします。

CONFIG += resource_big
1
  では解決しません。

試み 2
  通常の方法に従って、コンパイルされたコンパイラを直接変更します。
  
  これは解決できません。


解決策
  コンパイラのメモリ割り当ての設定が見つからなかった(主にQtCreatorを使用して開発)ため、メモリを増設してみます(筆者は仮想マシンwin10+8GBとして開発し、win10+16GBメモリに拡張したため、解決します)このことから、
  
  msvc2017x64 のコンパイラには、システム メモリに対する使用メモリの比率を設定する場所があり (コンパイル プロセス中に監視され、実際に使用されるメモリは大きくありません)、おそらくそれを超える可能性があります。この比率は、システム メモリを増やした後でも制限を超えることはなく、コンパイルは正常に成功しました。

解決

この製品でコンパイルされる 64 ビット プログラムも、デフォルトの 32 cl.exe// の使用によって引き起こされるためです。メモリが 3.5GB を超える場合、エラーが報告されます。
したがって、64 cl.exe に切り替える必要があります。
1: vcxproj ファイルを開きます。グローバルの ItemGroup に 1 つを追加します:
@PreferredToolArchitecture@x64@/PreferredToolArchitecture@ @ を対応する <> に置き換えます。

2: vs インストール ディレクトリを開きます (たとえば、私のマシン C:\Program Files (x86)\Microsoft Visual Studio\Preview\Professional\VC\Tools\MSVC\14.15.26726\bin を開き、Hostx86 と Hostx64 のフォルダー名を交換します)
それが私が使っているものです。シンプルかつ高速です。

おすすめ

転載: blog.csdn.net/vcit102/article/details/131803181