【发布时间】:2020-10-21 06:06:41
【问题描述】:
我在 VS2019 中有一个包含多个项目的 C++ 解决方案。我刚刚添加了一个新的静态库项目,这个静态库需要使用另一个现有静态库项目中包含的一些功能。
当我右键单击这个新静态库下的引用,并添加对现有静态库的引用时,引用下的图标显示一个警告图标(带感叹号的黄色三角形)。
我查看了一些有关损坏引用的 Microsoft 文档:
https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2008/ayds71se(v=vs.90)?redirectedfrom=MSDN
“损坏的引用”页面中的答案均不适用于我的情况,因为我正在使用向导创建引用并且它立即损坏了;我当然没有移动磁盘上的文件或类似的东西。
这里报告了一个类似的问题,没有明确的解决方案:
https://developercommunity.visualstudio.com/content/problem/632599/the-microsoftvisualstudioprojectsystemreferencesun.html
在我的解决方案中的其他项目中,对现有静态库的引用做 工作时没有任何警告。我可以看到的主要区别是引用该库的项目是 MFC 应用程序,而不是静态库本身,但我不明白为什么静态库在引用另一个静态库时会有任何问题。
当我双击引用时,我收到一条弹出消息:
“Microsoft.VisualStudio.ProjectSystem.References.UnresolvedBuildDependencyProjectReference” 无法解析引用。
我在这里做错了什么?
【问题讨论】:
-
添加引用对于 C# 来说是很有男子气概的。对于 C++,还有更多工作要做:stackoverflow.com/a/61350540/2805305 这能解决您的问题吗?
-
@bolov 如果仅适用于 C#,那么每个项目都存在“引用”下拉列表,这很奇怪。我不确定您附加的链接是指嵌套的静态库,还是只是如何将静态库链接到应用程序。无论如何,听起来我需要做的就是将我的包含库指向嵌套库中的头文件,它应该以这种方式编译。我认为“链接”可能是我正在做的事情的错误术语,因为我只是试图编译引用另一个静态库的包含静态库。
-
在终端应用程序中使用库或在另一个库中使用库:相同的概念适用。
标签: c++ visual-studio