日常的なソフトウェア開発では、プロジェクトが大きくモジュール数も多いため、コンパイル時に「コンパイラのコンパイル領域が不足しています」というエラーが報告され、従来の方法では問題を解決できません。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 のフォルダー名を交換します)
。。それが私が使っているものです。。シンプルかつ高速です。。