链接到链接到静态.lib的静态.lib时出现问题

时间:2011-05-05 15:56:33

标签: c++

我有一个有两个项目的VS2010解决方案。第一个项目[DevLib]是一个lib,它基本上是另一个我们没有源代码的lib [ExtLib]的包装器。构建这个lib工作正常。

第二个项目[TestApp]然后使用DevLib。在构建TestApp时,我得到:

DevLib.lib(DevClass.obj) : error LNK2019: unresolved external symbol _ExtLib_SomeFunction referenced in function “public: bool __thiscall DevClass::Open(void)” (?Open@DevClass@@QAE_NXZ)

因此,链接器在DevLib中找到函数,但是在链接到ExtLib中的函数时遇到问题,这些函数现在应该与DevLib链接。我在这里有点迷失,这对任何人都响了吗?

1 个答案:

答案 0 :(得分:2)

静态库不与其他静态库链接。要生成最终的可执行文件,您需要将代码链接到所涉及的所有静态库。换句话说,如果libA依赖于libB,那么你的最终链接必须同时针对libA和libB。