【发布时间】:2010-12-30 15:37:29
【问题描述】:
大家好,我刚刚在我的系统上安装了 VC 2010 Premium Beta2,然后我将旧的 vc9 项目迁移到它……一开始一切似乎都很好……
奇怪的是,无论我编译什么,我都会收到以下错误消息:
1> Microsoft (R) 增量链接器版本 6.00.8447
1> 版权所有 (C) Microsoft Corp 1992-1998。保留所有权利。
1>
1> ■/
1>LINK : 警告 LNK4044: 无法识别的选项“ERRORREPORT:PROMPT”;忽略
1>LINK:致命错误 LNK1181:无法打开输入文件“■/.obj”
========== 构建:0 成功,1 失败,0 最新,0 跳过 ==========
关于 errorreport 的警告有点烦人,但不是致命的……烦人,因为无论我选择哪种错误报告设置,警告仍然存在……但是 LNK1181 是致命的,甚至更令人沮丧,因为它似乎无法检测到原因。
我的输入列表不包含 .obj 文件,只有各种 .lib 文件...此外,名称中有一个奇怪的块状特殊 ascii 字符,我肯定从未在任何地方输入过。最初,当这出现时,我认为这一定是 vc9 到 vc10 迁移的一些神器……在花了 2 个小时寻找原因之后,我突然想到测试它是否发生在全新的项目中…… . 果然如此!
我创建了一个全新的项目...不涉及迁移,nada...只是一个带有默认 afx 文件的全新 win32 项目等等...我没有更改任何默认设置,它得到了这个精确同样的链接器错误!
我希望这里有人能解释一下,因为这很神秘......目前我能想到的唯一其他诊断方法是尝试创建一个新工作区并在其中添加一个新项目,看看是否工作...好的,刚刚尝试过,没有骰子...问题仍然存在。
任何人有一些建议或以前看过这个?
【问题讨论】:
-
从构建日志发布确切的命令行。
-
您的系统路径中有 cl.exe 的副本吗?
-
嗯,我会用 2 行发布它,因为它们只给我 600 个字符链接:C:\COMMAND\link.exe /ERRORREPORT:PROMPT /OUT:"F:\CODING\ACTIVE\PROJECT_BO_RD2_VISTA \Debug\OG_TEST.exe" /INCREMENTAL /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST / ManifestFile:"Debug\OG_TEST.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"F:\CODING\ACTIVE\PROJECT_BO_RD2_VISTA\Debug\OG_TEST.pdb" /子系统:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT
-
/IMPLIB:"F:\CODING\ACTIVE\PROJECT_BO_RD2_VISTA\Debug\OG_TEST.lib" /MACHINE:X86 调试\OG_TEST.res 调试\OG_TEST.obj 调试\stdafx.obj 调试\OG_TEST。 exe.embed.manifest.res â– / 1>LINK : 致命错误 LNK1181: 无法打开输入文件“â– /.obj” 1>Done Building Project "F:\CODING\ACTIVE\PROJECT_BO_RD2_VISTA\OG_TEST\OG_TEST. vcxproj”(构建目标)——失败。构建失败。经过时间 00:00:00.80
-
哦,拍摄!就是这样! C:\COMMAND 是我存放我编写的工具的地方,我似乎在那里留下了一个旧的链接器 C:\COMMAND\LINK.EXE 是 1999 年的链接器!可能是 vc6 或 vc7 或一些废话... omg haha... 问题解决了,谢谢大家 :) :)
标签: visual-c++ visual-studio-2010