2016-03-02 83 views
1

不知何故,即使浏览了大量材料,我也无法理解一件事。我在Visual Studio 2013中有一个C++库项目。当我构建它时,它会创建* .lib文件。现在,还有一个项目需要链接.lib文件。我创建了一个名为lib的文件夹,将.lib文件放在那里,并将lib文件夹的路径设置为Properties->Linker->General->Additional Library Directories。接下来,我在Properties->Linker->Input->Additional Dependencies中添加了库文件名*.lib。现在,编译该项目时会出现大量链接器错误消息unresolved external symbol ...。我需要做更多的连接图书馆的工作?将.lib库链接到Visual Studio中的项目

回答

1

我不确定什么是您的“另一个项目”使用的语言,无论如何,如果您没有在代码中明确加载它,您应该在链接器 - >输入 - >附加依赖项中专门设置* .lib文件。

+0

另一个项目也在C++中。对不起,我忘了提及我已经完成了你所提到的。还有什么需要做的? – Nickal

+0

我是否需要.lib与.lib? – Nickal

+0

@Nickal:这取决于.lib。 .lib可能包含完整的函数(不需要DLL),也可能只包含定位DLL内部函数的信息。既然你有一个DLL,第二种情况适用。编译第二个项目使用.lib,然后运行它使用DLL。 – MSalters

1

如果两个项目都驻留在同一个解决方案中,最简单的方法是右键单击该项目,转到属性,然后转到通用属性,然后在框架和引用中添加对该库项目的引用。这将设置链接器链接.lib并添加一个构建依赖项,这样lib总是在可执行文件之前编译。

+0

谢谢。我已经为另一个项目完成了这项工作,但我试图链接的项目并不在同一个解决方案中。在此之上,我想知道这种情况有什么不对。这可以帮助我更好地了解图书馆。 – Nickal