具有动态依赖性的静态库

时间:2014-09-07 01:34:18

标签: c++ shared-libraries static-libraries

我遇到过很多类似的问题,但是我没有得到答案。

所以,我有一个依赖于Static.lib的App.exe,而后者依赖于动态库Dynamic.dll。在Static.lib中,我链接到Dynamic.lib导入库。我明白现在App.exe必须在其目录中安装Dynamic.dll才能成功运行,但是当我尝试链接代码时,我得到一个错误,即App项目找不到Dynamic.lib导入库。

我的问题是,为什么App项目在Static.lib中已经链接时必须链接到Dynamic.lib导入库?

1 个答案:

答案 0 :(得分:2)

  

我的问题是,为什么App项目必须链接到Dynamic.lib   导入库已经在Static.lib中链接了吗?

首先,您需要生成静态库,以便使用共享库的头文件进行编译,然后链接到共享库。

然后生成.exe,使用静态库的头文件进行编译;然后,您需要链接共享库,因为静态库中的某些方法是在共享库中实现的。

相关问题