如何在同一VC ++ 2010解决方案中链接到项目生成的.lib

时间:2011-01-13 20:13:19

标签: c++ visual-studio-2010 static-linking

我有一个包含多个项目的VC ++ 2010解决方案,其中一个是我希望将一些公共代码放在一个地方而生成的.lib。

我现在正试图让另一个项目(这是一个普通的控制台应用程序)链接到这个库。但是,VS抱怨它无法找到.lib,即使我将其添加为附加依赖项。

我有点希望VS能让我轻松,因为.lib在同一个解决方案中,虽然是在一个不同的项目中,但遗憾的是,没有运气。

编辑我必须是盲人,但我似乎无法找到Tim提到的“额外路径”选项。我将lib项目添加到控制台项目的项目依赖项中,但它仍然无效。

EDIT2 在我真正将.cpp和.h文件添加到.lib项目后,Edwin的建议就行了。当我想念一些如此明显的东西时,我真的很讨厌它。

3 个答案:

答案 0 :(得分:4)

properties_> Common Properties-> Framework&您的可执行文件的dependecies 可以添加可执行文件所依赖的项目。之后,您只需要调整 C ++ - >常规其他包含路径,以便找到您的包含文件。

编辑:我有一个名为AppTest的exe项目和一个lib-project Dummy。

我将项目Dummy添加到Framework& AppTest的家属。

然后我调整了所有配置AppTest的包含路径以指向虚拟目录。

然后我在apptest.cpp中包含了dummy.h,并从dummy.lib调用了一个函数。

构建解决方案。就是这样。

答案 1 :(得分:2)

在Visual C ++中有三种(可能更多:-)方式链接库。您可以通过执行Add Existing Item并指向lib文件,在项目中显式包含.lib文件。这样您就不需要指定路径了。您可以在Options / Linker / Input中添加文件,并在Additional Library Directories中指定路径。最后,您可以使用#pragma comment(lib,“my.lib”)并像以前一样指定路径。我不确定,但我认为上面的pragma也允许完整的路径。

答案 2 :(得分:0)

更改项目中依赖于lib的“附加路径”属性。