错误 LNK1104:错误消息中显示的路径未在其他依赖项中定义
error LNK1104 : the path shown in the error message is not defined in additional dependencies
我在Visual Studio中收到错误LNK1104:
LNK1104无法打开文件"./x64/Release/zlib.lib"
编译我的项目时。
关键是我看不到在项目属性中链接器的其他依赖项中定义的相应路径。
当我将zlib.lib的正确路径添加到依赖项列表中或删除它时,会显示错误。
以下是项目编译CMD行和链接器:
/Yu"stdafx.h" /GS /GL /W3 /Gy /Zc:wchar_t /Zi /Gm- /O2 /sdl /Fd"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFiltertempReleasevc140.pdb" /Zc:inline /fp:precise /D "NDEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /WX- /Zc:forScope /Gd /Oi /MD /Fa"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFiltertempRelease" /EHsc /nologo /Fo"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFiltertempRelease" /Fp"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFiltertempReleasePMDFilter.pch"
和
/OUT:"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFilterbinReleasePMDFilter.exe" /MANIFEST /LTCG:incremental /NXCOMPAT /PDB:"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFilterbinReleasePMDFilter.pdb" /DYNAMICBASE "C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfopennurbs_20130711binReleaseopennurbs.lib" "C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfopennurbs_20130711zlibbinReleasezlib.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEBUG /MACHINE:X64 /OPT:REF /INCREMENTAL:NO /PGD:"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFilterbinReleasePMDFilter.pgd" /SUBSYSTEM:CONSOLE /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"C:UsersmeDocumentsVisual Studio 2015ProjectsAnalysePMDSurfPMDFiltertempReleasePMDFilter.exe.intermediate.manifest" /OPT:ICF /ERRORREPORT:PROMPT /NOLOGO /TLBID:1
不确定,但是您是否尝试过两个"\"而不是一个"\"?
此外,其中一些错误可能是链接器工具错误LNK1104:
- 磁盘空间不足。
- 文件不存在。
- 在项目的属性页对话框中指定库时,
库名称应用空格(而不是逗号(分隔。 - 文件名或路径不正确。
- 驱动器规格无效。
- 文件权限不足。
- 文件名的路径扩展到 260 个字符以上。
- 如果给定文件名为 LNKn,则由 链接器 对于临时文件,TMP 环境变量中指定的目录
可能不存在,或者
为 TMP 环境变量指定了多个目录。只应为 TMP 环境变量指定一个目录路径
。 -
如果出现库名称错误消息,并且您最近
从以前的 Microsoft Visual C++ 开发中移植了 .mak 文件 系统,则库可能不再有效。确保在这种情况下
库仍然存在。 -
另一个程序可能打开了该文件,而链接器无法写入 它。
-
不正确的 LIB 环境变量。有关如何更新的信息 LIB 环境变量,请参阅 VC++ 目录属性页 。
确保此处列出了包含所需库的任何目录。
好吧,我可以这样解决它:创建一个新的解决方案和新项目,复制粘贴所有代码文件。为新项目设置链接,一切都很好。
相关文章:
- 这个失败的测试是将零添加到空指针未定义的行为、编译器错误还是其他什么?
- 在其他容器中使用 boost::container::static_vector 时,GCC 编译错误"将'const s'绑定到类型's&'的引用丢弃限定符"
- 当 lib 已添加到其他依赖项时,如何在 VS 中调试未解析的外部符号错误
- 为什么当我没有变量或其他任何命名的东西时"no match for 'operator==' "错误?
- 我如何在一个 if 语句中声明所有数字我尝试通过其他方式声明所有数字,如果一个接一个,但似乎代码有逻辑错误
- operator_surrogate_func:未找到匹配的重载和其他2个错误
- C++ 在方程中使用变量;错误:表达式必须具有整数或无作用域枚举类型及其他
- C++ 在多个其他类中使用单个类 - 编译时出现多个定义错误
- 错误 LNK1104:错误消息中显示的路径未在其他依赖项中定义
- 从其他类声明类类型变量会给出 C2143 错误(在"*"之前缺少";")
- isdigit() 和 isalnum() 给出错误,因为输入是一个常量字符并且无法转换。其他可能查看输入是否为数字的方法?
- 仅一个功能的链接错误.在同一类和CPP文件中具有相似签名的其他函数工作正常
- 对数组进行排序并匹配其他数组并得到错误
- C++编译错误是由于使用 std::move 时运动构造函数与其他非运动构造函数之间的冲突
- 在其他构造函数的调用中调用构造函数时C++编译错误
- 驾驶执照考试计划.无法将 std:: 字符串转换为 std :: 字符串和其他错误
- 功能模板与Variadic模板过载:Intel C 编译器版本18产生的结果不同于其他编译器.英特尔是错误的
- D3D9 Direct3DCreate9() 链接器错误,但所有其他 D3D 函数都有效
- 为什么 size() 在与其他堆栈交换元素后提供错误的堆栈大小?
- 无法使用其他文件中的枚举:" does not name a type"错误