背景知识:vs的编译器在编译源码的时候会使用一些离散堆,这些离散堆可以随需求动态增长,但是预编译头的离散堆大小是确定的;关于premake不再多说;
问题原因:①当预编译头文件中包含的东西超过预编译头分配的离散堆大小时,就会出现fatal error C1076的问题;这个时候需要配置/ZmXX,(XX可以使用提示中给出的值);②虽然知道这个原理但是不知道如何在premake.lua文件中配置;
解决方法:使用在premake.lua文件中添加:buildoptions "/Zm1000";
思考:这是一个问题的特例,其实反过来从特殊到普通考虑,在编译中的很多编译选项都可以写在buildoptions里面,这个类比思维要比解决这个问题有价值的多。