安装vs2012后vs2010 LINK : fatal error LNK1123: failure during conversion to COFF

本文详细描述了遇到LINK错误LNK1123时的原因分析及解决方法,包括理解COFF通用对象文件格式、链接器如何将非COFF文件转换为COFF,以及通过替换CVTRES.EXE文件解决由VS2012安装导致的问题。提供了解决方案并分享了解决过程中的关键步骤。

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

今天编译某工程时出现错误提示:

LINK :fatal error LNK1123:failure during conversion to COFF: file invalid or corrupt

COFF –通用对象文件格式Common Object File Format),是一种很流行的对象文件格式,VC所产生的目标文件(*.obj)就是这种格式[1]VC在链接时,输入文件必须是COFF。但是如果输入文件不是该格式,VC会使用CVTRES.EXE将输入文件转化成COFF格式 [2]。这个错误提示的意思即为在链接时不能将格式转化为COFF

微软对该错误给出的解释是由于计算机中先后安装了VS2010VS2012所致[3],可以通过安装VS2010SP1解决。由于本人机器已经是VS2010SP1了(当时没考虑要不要重装sp1的问题),故寻求其他解决问题的途径。国外一些大侠认为在安装VS2012时,安装程序把"C:\ProgramFiles (x86)\Microsoft Visual Studio 10.0\VC\bin"目录下的所有内容替换成了RTMRelversion (10.0.30319.1)版本,并建议将该目录下CVTRES.EXE改回VS 2010 SP1 (10.0.40219.1) 版本[4]。哪里去找这个“对”的CVTRES.EXE文件呢?发现国内已有类似解决方案,即将CVTRES.EXE文件替换[5]。从[5]下载了CVTRES.EXE,问题解决。

 

[1]http://baike.baidu.com/view/1240794.htm

[2]http://msdn.microsoft.com/en-us/library/7dz62kfh.aspx

[3http://support.microsoft.com/kb/2757355

[4]http://social.msdn.microsoft.com/Forums/vstudio/en-US/eb4a7699-0f3c-4701-9790-199787f1b359/vs-2010-error-lnk1123-failure-during-conversion-to-coff-file-invalid-or-corrupt?forum=vcgeneral

[5]http://download.youkuaiyun.com/download/delbboy/4534577

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值