繁体   English   中英

同一解决方案中项目之间的链接问题(Exe依赖于Lib)

[英]Link problem between projects in same solution (Exe depends on Lib)

我有几个项目的一个解决方案。 假设ProjectA将生成 exe 文件,而ProjectB只生成一个.lib文件。 我已经检查过ProjectA依赖于ProjectB ,因此ProjectB将始终在ProjectA之前编译。

当我编译ProjectB时,一切正常。 但是,如果我编译ProjectA ,我会收到链接错误,指出 B 的某些方法不存在。 我查过了,确实存在。

到底是怎么回事?

谢谢你的帮助!

项目属性,链接器,常规:将“链接库依赖项”设置为“是”。

我发现我需要检查几件事情来修复令人烦恼的链接错误:

“link.exe”以代码 1104 退出。

  1. 根据@Eric 的回答,在顶层(项目 A): Project -> Linker -> General -> Link Library Dependencies: Yes

链接库依赖

  1. Select 父/顶层项目,并在项目属性道具列表中,单击Project Depdendencies并确保Project A引用Project B

项目依赖

  1. 有点反直觉,在ProjectA上确保您没有对ProjectB.lib的额外 linker 库依赖。 这似乎鼓励查看 VS 在其他地方寻找另一个名为ProjectB.lib的库。

在此处输入图像描述

  • 您不需要将 ProjectB 的 output 目录添加到 ProjectA 的附加链接目录(默认为$(SolutionDir)$(Platform)\$(Configuration)\ )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM