类似的问题,没有适用于我的案例的真实答案:CLICK
我在问这里之前研究过的问题 - CLICK
我正在使用MinGW64
尝试编译非常大的.cpp
文件(>13k
行),但我也可以访问Visual Studio 2010 - 如果有人使用了解决方案那个,随便告诉我。
我在装配阶段发现了一个错误 -
... too many sections (33396)
C:\Users\username\AppData\Local\Temp\ccnAocvD.s: Assembler messages:
C:\Users\username\AppData\Local\Temp\ccnAocvD.s: Fatal error: can't write
CMakeFiles/source.dir/sourcecode.cpp.obj: File too big
我正在按照我的两位同事的建议运行-Os
,--param ggc-min-expand=0
,--param ggc-min-heapsize=4096
的编译 - 编译现在正在运行5个多小时。
更新
正如一些人所建议的,我只是将文件拆分为2个源文件并为它们创建标题 - 谢谢。
第二次更新:
编译尚未完成(5天!!!),即使在创建标题并将文件拆分为4个较小的文件后也是如此。
最终
这个问题仍然没有得到解决 - 即使按照发布的每个人的建议,我仍然无法编译这个问题。
答案 0 :(得分:1)
不确定GCC,但您是否在VisualStudio中尝试了该特定文件的/bigobj
标志?
我对一个大文件有同样的问题,它实际上解决了这个问题。所以值得一试。
来自MSDN:
默认情况下,对象文件最多可容纳 65,536(2 ^ 16)个可寻址部分。无论指定哪个目标平台,都是这种情况。 / bigobj将容量增加到 4,294,967,296(2 ^ 32)。
有关此here的更多信息。