1. 程式人生 > 其它 >在vs2019中進行qt桌面應用開發時,編譯器堆溢位的編譯錯誤(error C1060編譯器堆記憶體不足)

在vs2019中進行qt桌面應用開發時,編譯器堆溢位的編譯錯誤(error C1060編譯器堆記憶體不足)

一、錯誤現象

二、錯誤原因分析

1、此次錯誤出現的原因:當在qt資原始檔中加入過多圖片時(22Mb),編譯檔案內容過大導致

2、本質原因:vs2019中編譯器預設是32位的,當參與編譯的檔案過大時,將會導致編譯器堆溢位

三、應對方法

1、若是在QtCreator中開發qt專案,因資原始檔過大導致編譯器堆溢位,那麼可以 在專案 .pro 檔案中修改配置:CONFIG += resources_big

2、若是在Vs中進行專案開發時,編譯提示編譯器堆空間不足,那麼可以開啟專案的.vcxproj 檔案;找到<PropertyGroup Label="Globals">節點,並在該節點下新增<PreferredToolArchitecture>x64</PreferredToolArchitecture>,將預設使用32位的編譯器更換位64位,此時編譯則問題解決

  新增前:

<PropertyGroup Label="Globals">
<ProjectGuid>{B12702AD-ABFB-343A-A199-8E24837244A3}</ProjectGuid>
<Keyword>Qt4VSv1.0</Keyword>
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>

  新增後:

<PropertyGroup Label="Globals">
<ProjectGuid>{B12702AD-ABFB-343A-A199-8E24837244A3}</ProjectGuid>
<Keyword>Qt4VSv1.0</Keyword>
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>

<PreferredToolArchitecture>x64</PreferredToolArchitecture>

</PropertyGroup>