TDM-GCC w64 脚本将 Windres 更改为 32 位?

2023-11-24

尝试让 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 $文件 -J rc -o $resource_output -O coff $res_includes

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

问候 安德鲁


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

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

对于 Windows 32 位格式,您需要coff格式化为pe-i386 target.

基本上,你必须添加-F pe-i386 (or --目标=pe-i386) after -O coff如果您手动生成它,请标记到您的命令行。

在 GNU 自动工具中,它是关于RCFLAGS。因此,如果有一些配置脚本,只需添加

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TDM-GCC w64 脚本将 Windres 更改为 32 位? 的相关文章

随机推荐

  • 警告:文件大小():img.jpg 统计失败

    我正在尝试获取图像的文件大小 但我不断得到Warning filesize stat failed for img jpg 这就是我所做的 path FILES profile name path iconv UTF 8 ISO 8859
  • 使用UIImagePickerController获取图片——如何知道保存的是PNG还是JPEG?

    我有一个UIImagePickerController让用户从图像库中选择图像 并通过didFinishPickingMediaWithInfo method 我需要能够将生成的图像保存到磁盘 在应用程序的文档文件夹中 并稍后重新加载 问题
  • `strtod("3ex", &end)` 的结果应该是什么?那“sscanf”呢?

    在我的实验中这个表达 double d strtod 3ex end 初始化d with 3 0和地方end指针指向 e 输入字符串中的字符 这正是我所期望的 这 e 字符可能看起来像是指数部分的开头 但由于缺少实际指数值 6 4 4 2
  • flex 属性在 IE 中不起作用

    我一直无法确定为什么 Flexbox 在 IE 11 中不起作用 为了进行测试 我从 CodePen 获取了一个非常简单的 Flexbox 布局 并粘贴了以下信息 Chrome 按预期工作 IE11 失败 在 Chrome 上运行的布局成功
  • EF Code First 创建非聚集主键索引

    我正在使用 EF 4 1 CodeFirst 创建数据库 看来 EF 正在使用聚集索引创建所有主键 这在一种情况下 可能是更多情况 对我们来说并不是最佳选择 有没有办法告诉 EF 生成这个主键作为非聚集索引的表 当然 我们可以在创建数据库后
  • 如何在 MS Code 合约中查找“屏蔽”断言

    我的 CodeContracts 错误列表中有以下消息级条目 CodeContracts 检查了 410 个断言 404 个正确 6 个被屏蔽 我不明白 什么是掩盖断言 如何找到它提到的 6 我是否应该关心他们 抱歉没有发布代码 我不知道如
  • 分隔字符串中的十六进制转义序列

    字符串常量可以吗 foo x01 bar 写成单个字符串文字 同时保留十六进制表示法 和 foo x01bar 转义序列似乎被解释为 x01ba因为我收到警告 十六进制转义序列超出范围 foo x01 bar is字符串文字 C 标准规定
  • 如何在asp.net中动态生成无序列表?

    我想生成一个无序列表 其中包含用于在数据库中显示图像的标签 我查看了项目符号列表 但它不适用于图像 我如何从数据库中的结果动态生成它 例如 如果我在数据库中有 6 个图像 那么我希望生成的列表必须如下所示 ul li img src Res
  • 根据Python中的一组索引将列表拆分为子列表

    我有一个类似于下面的列表 a b c d e f g h i j 我想用索引列表分隔 1 4 在这种情况下 它将是 a b c d e f g h i j As 1 a 1 4 b c 4 d e f g h i j 情况2 如果索引列表是
  • 如何使用 Vuelidate 验证密码?

    问候 我需要验证密码表格 除了必填字段外 必须至少有 1 个大写字母 至少 1 个小写字母 至少 1 个数字且至少包含以下字符之一 我正在使用这个包https vuelidate js org EDIT 或正则表达式 只需添加一个自定义函数
  • 使用 python 计算卷上剩余的跨平台空间

    我需要一种方法来在 Linux Windows 和 OS X 上使用 python 来确定磁盘卷上的剩余空间 我目前正在解析各种系统调用 df dir 的输出来完成此操作 有更好的方法吗 import ctypes import os im
  • 如何从浏览器控制台访问和测试 AngularJS 过滤器?

    给定一个测试过滤器 这样说 大写 过滤器将每个单词的第一个字母大写 return function input return input input replace W s g function txt return txt charAt
  • Visual Studio 构建失败:无法将 exe 文件从 obj\debug 复制到 bin\debug

    Update 可以找到重现此错误的示例项目在 Microsoft Connect 上 我还测试并验证了中给出的解决方案下面接受的答案致力于该示例项目 如果此解决方案不适合您 则您可能遇到了不同的问题 属于单独的问题 这是之前在 Stack
  • 打印时如何避免最后出现多余的空白页?

    我正在使用 CSS 属性 如果我使用page break after always 它之前会打印一个额外的空白页 如果我使用page break before always 之后会打印一个额外的空白页 我怎样才能避免这种情况
  • 使用 java 将电子邮件转换为其原始格式

    到目前为止我一直尝试创建一个类型的对象MimeMessage使用JavaMail api 然后获取其原始表示 但没有成功 我唯一能获得的是原始表示content电子邮件的内容 但不包括标题 主题或收件人 我对任何建议 任何 java 库感兴
  • 如何扩展代码点火器控制器类?

    在我的 CI system libraries 目录中 我有一个名为 DD Controller php 的新类 该文件如下所示
  • Python 中的“@”是什么意思?

    什么是 在 Python 中是什么意思 例子 login required etc 这是装饰器语法 函数定义可以由一个或多个装饰器表达式包装 定义函数时 在包含函数定义的范围内评估装饰器表达式 结果必须是可调用的 它是用函数对象作为唯一参数
  • 给定一个函数记录,以及该函数所作用的类型的数据记录,如何通用地应用该函数记录?

    标题稍微不准确 因为我的特定情况涉及更多 而不是第一个记录中的函数直接作用于第二个记录中的值 而是作用于值的列表 或其他可遍历的 我们可以假设 对特定字段的应用程序的结果返回的值与该字段中的类型相同 如果这能给我们带来什么好处的话 一个例子
  • 在启动画面期间加载所有场景

    我的移动 2D Unity 游戏中有多个场景 我想在启动屏幕中加载所有场景 以便场景传递流畅 我怎样才能做到这一点 如果我这样做 我是否需要更改 Application LoadScene 方法 我可以使用什么方法 我是否需要更改 Appl
  • TDM-GCC w64 脚本将 Windres 更改为 32 位?

    尝试让 TDM GCC 4 7 1 在 XP SP3 上运行 我现在只需要一个 c 32 位版本 看来 Windres 的格式不正确 我的 rc 文件构建失败 x86 64 w64 mingw32 g exe Wall m32 s D M