我正在尝试编译Qt(Windows 7,msys下的mingw32-g ++ 32位),但ld内存不足。有人知道原因吗?或者有解决方法吗?谢谢!
$ g++ -mthreads -shared -Wl,--out-implib,i:/ Programs / Qt / lib / libQtGuid4.a -o ../ ../lib/QtGuid4.dll object_script.QtGuid.Debug -L'i:/Programs/Qt/lib' -L'i:/Pro grams/Qt/lib' -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 tmp/obj/debug_shared/QtGuid_resource_res.o -lmsimg32 -lshell32 -lQtCored4 -lz
i:/ programs / mingw / bin / .. / lib / gcc / mingw32 / 4.7.0 / .. / .. / .. / .. / mingw32 / bin / ld.exe:o ut of memory allocating 133614056 bytes collect2.exe:错误:ld返回1个退出状态
editbin /largeaddressaware ld.exe
使ld.exe
具备大地址意识 - editbin 与 Microsoft C/C++ 工具链一起提供,SDK 也许也有。这将为进程提供4GB的可用内存,但是如果程序在处理高位设置的指针时存在错误(这是一个常见问题,这就是为什么图像的头部有一个特殊的比特来启用该功能),那么您可能会遇到其他问题。因此,在必要时请备份ld.exe
的副本以进行恢复。 - Michael Burr