Microsoft.CppCommon.targets(574,5): error MSB6006: “mt.exe”已退出,代码为 31。

本文探讨了在使用OpenMP进行稠密矩阵乘法编译过程中遇到的错误:mt.exe已退出,代码为31。通过调整工程属性页中嵌入清单设置,从是改为否,成功解决了该问题。文中还提及了release模式下使用不同OpenMP选项的表现差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天编译一个OpenMP的稠密矩阵乘法的例子程序,debug方式下都正常(/openmp 或者 /openmp-)。release方式下/openmp也编译成功了,但是“/openmp-”提示:

C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(574,5): error MSB6006: “mt.exe”已退出,代码为 31。

不过.exe其实已经生成了。我再生成项目,就没有这个错误提示了。运行了一下生成的exe还挺快,比/openmp还快。可能是程序太简单,单线程比多线程还快吧,没深究。

网上搜了一下,枫之逆的博文https://blog.csdn.net/lufeng20/article/details/17961411说把 工程属性页中的:”配置属性 | 清单工具 | 输入和输出 | 嵌入清单” 改成“否”,就可以了。试了下,果然是这样。字面意思就是,是把"清单文件"嵌入程序集中还是作为单独的文件。

后来,release方式下用/openmp选项也出了这个提示("嵌入清单” 为“是")。

没再试验了。这个问题好像和OpenMP没什么关系。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值