编译gcc本身,在windows上为windows target target arm:“cc1.exe:内存不足分配2278450599字节”

时间:2015-09-16 10:41:12

标签: windows gcc arm cross-compiling

我正在关注 http://www.mingw.org/wiki/hostedcrosscompilerhowto 并发出

  

make all-gcc | tee make-c-only.log 2>& 1

产量

gcc -c   -O2 -pipe -DIN_GCC -DCROSS_COMPILE  -W -Wall -Wwrite-strings
-Wstrict-p rototypes -Wmissing-prototypes -pedantic -Wno-long-long    -DHAVE_CONFIG_H    -I . -I. -I../../../../gcc-core-3.4.2-20040916-1-src/gcc-3.4.2-20040916-1/gcc -I../ ../../../gcc-core-3.4.2-20040916-1-src/gcc-3.4.2-20040916-1/gcc/.
-I../../../../ gcc-core-3.4.2-20040916-1-src/gcc-3.4.2-20040916-1/gcc/../include 
insn-modes.c
-o insn-modes.o

**cc1.exe: out of memory allocating 2278450599 bytes** make[1]: ***
[insn-modes.o] Error 1 make[1]: Leaving directory
`/e/Lorin/gcc/aufWindows7MingwOrgHowto/build/arm-elf/ gcc/gcc' make:
*** [all-gcc] Error 2

我有2GB的可用内存。

编辑:将尝试使用最后一个MSYS-20111123.zip的64位mingw-w64 5.2.0。

1 个答案:

答案 0 :(得分:0)

当我使用mingw的 32位分布时,编译器无法为自己分配超过2GB的RAM,无论这是否是一个bug。

此错误的解决方案是为Windows使用更新版本的gcc。来自“ mingw-w64 ”项目的那个。

注意:不要让自己感到困惑,mingw-w64项目也有32位版本,即使项目名为 mingw的-W的 64