gpt4 book ai didi

c++ - TDM-GCC w64 脚本更改 32 位的 windres?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:37:06 25 4
gpt4 key购买 nike

尝试让 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/

他建议使用此脚本 - 但我不知道如何更改它以满足我的需要 - 感谢任何帮助!

$rescomp [[ if(GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Debug32")) || GetProjectManager().GetActiveProject().GetActiveBuildTarget().Matches(_T("Release32"))) { print(_T("-D USE_X86_MODE -F pe-i386")); } ]] -i $file -J rc -o $resource_output -O coff $res_includes

此外 - 是否有任何 TDM-GCC(预构建/安装程序类型)替代品?我真正需要的是带有 Graphite 选项的 32 位构建。还使用 CodeBlocks IDE。

问候安德鲁

最佳答案

要查看所有可能的 windres 参数,您可以请求帮助:

x86_64-w64-mingw32-windres.exe --help

对于 Windows 32 位格式,您需要具有 pe-i386 目标的 coff 格式。

基本上,您必须在-O coff 标志后添加-F pe-i386(或--target=pe-i386)如果您手动生成它到您的命令行。

在 GNU autotools 中,它是关于 RCFLAGS 的。所以如果有一些配置脚本,只需添加

./configure RCFLAGS="--output-format=coff --target=pe-i386" ........

关于c++ - TDM-GCC w64 脚本更改 32 位的 windres?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18805155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com