试图让TDM-GCC(4.7.1)运行在XP SP3上,我现在只需要一个c++ 32位构建。看起来windres格式不对,我的.rc文件在构建时失败了:
x86_64-w64-mingw32-g++.exe -Wall -m32 -s -D_M_X86 -DBUILD_DLL -DNDEBUG -c C:\SynthEditSDK\TD_SV\SV.cpp -o obj\Release\TD_SV\SV.o
windres.exe -J rc -O coff -i C:\SYNTHE~1\TD_SV\TD_SV.rc -o obj\Release\TD_SV\TD_SV.res
x86_64-w64-mingw32-g++.exe -shared -Wl,--output-def=bin\Release\libTD_SV -Wl,--out-implib=bin\Release\libTD_SV -Wl,--dll obj\Release\se_sdk3\mp_sdk_audio.o obj\Release\se_sdk3\mp_sdk_common.o obj\Release\TD_SV\SV.o obj\Release\TD_SV\TD_SV.res -o bin\Release\TD_SV.sem -Wl,--kill-at -static-libgcc -m32 -luser32
c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../x86_64-w64-mingw32/bin/ld.exe: i386:x86-64 architecture of input file `obj\Release\TD_SV\TD_SV.res' is incompatible with i386 output
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 2 seconds)
0 errors, 2 warnings (0 minutes, 2 seconds)我的资源文件(TD_SV.rc)似乎是一个错误:
TD_SV.res' is incompatible with i386 output我已经搜索了几个小时了,我找到的最接近的解决方案就是这里:
http://backyardcode.com/
他建议这个脚本-但我不知道如何改变它以适应我的需要-任何帮助感谢!
if(GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Debug32")) [_T(“-D USE_X86_MODE -F pe -i 386”);}]-i $file -J rc -o $resource_output -O coff $res_includes
还有-有任何TDM-GCC (预建/安装类型)替代方案吗?我真正需要的是32位构建石墨选项。也可以使用CodeBlocks IDE。
问候安德鲁
发布于 2013-11-10 21:01:08
要查看所有可拥有的风向参数,您可以请求帮助:
X86_64-W64-mingw32 32-winres.exe--帮助
对于Windows32位格式,您需要coff格式和pe-i 386目标。
基本上,如果手动生成-F pe-i 386,则必须在命令行中添加-O coff标志。
在GNU自动工具中,它是关于RCFLAGS的。因此,如果有一些配置脚本,只需添加
../配置RCFLAGS=“-输出-格式=coff-目标=pe-i 386”.
https://stackoverflow.com/questions/18805155
复制相似问题