Windows 10
Microsoft Visual Studio 社区 2019 版本16.7.3
在我的解决方案中,有项目 A、B 和 C。A 和 B 的配置类型设置为 静态库 (.lib)。 A、B 和 C 的输出目录均设置为 $(SolutionDir)bin uilds$(Configuration)-$(Platform)$(ProjectName)\
输出文件是这三个文件的默认值 $(OutDir)$(TargetName)$(TargetExt)。
C 的配置类型是 Application (.exe)。它的附加包含目录设置为 $(SolutionDir)A\src;$(SolutionDir)B\src
A和B的src文件夹分别有A.h和B.h文件。
C 将其引用设置为具有 A 和 B。
当我(重新)构建 C 时,它成功构建了 A 和 B,但随后收到 LNK1104 错误,指出它无法打开 bin uilds\Debug-x64\A\A.lib 的 lib 文件。无法打开它的原因是该文件不存在。我清理解决方案并重建 A,它说它成功了,但尽管如此,并未创建 .lib 文件。我使用文件资源管理器搜索了解决方案中的所有位置,但没有一个 .lib 文件。
任何帮助将不胜感激。
我有同样的问题以及与你类似的项目结构。 这就是我所做的,问题已经解决...... 转到链接器 -> 常规 -> 使用库依赖项输入,然后选中是
我遇到了同样的问题,因为源文件的
Item Type
被错误地设置为Does not participate in build
。
我通过以下步骤解决了问题。
Properties
。General
-> Item Type
Item Type
更改为 C/C++ compiler
(对于 *.c 和 *.cpp)或 C/C++ header
(对于 *.h)我建议你可以参考 Microsoft Docs 关于 lnk1104。
然后,您可以参考链接了解更多关于
Consuming libraries and components
的信息。
如果您的静态库项目是在同一解决方案中构建的:
../<library project name>
Add Reference
。