首页 文章

为什么g / ld内存不足?

提问于
浏览
6

我正在尝试编译Qt(Windows 7,mysw32-g 32位msys下)和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: error: ld returned 1 exit status

3 回答

  • 0

    感谢所有帮助我找到解决方案的评论者 . 我所做的是用大地址识别版本替换 ld . 我从bin文件夹中的this MinGW构建下载了它 . 链接该分发的人的帖子是here . 我希望这可以帮助遇到这个问题的其他人 .

  • 2

    如果安装当前版本的MinGW 4.6或更新版本,则编译QT应指定标志:

    configure -platform win32-g -4.6

    在winks-g 4.6的“mkspecs”中已经定义了标志-fno-keep-inline-dllexport来解决你的问题 .

  • 5

    我试图从其他地方下载ld.exe,但它不适合我的工具包(TDM-GCC) . 某些插件无法加载 . 希望制作ld.exe LAA并不是那么难 . 我已经在十六进制编辑器中打开了ld.exe,并在偏移0x96“0f 03”到“2f 03”处打了补丁 . 这对我有用 .

相关问题