在链接行中包含额外的库

时间:2010-07-13 21:14:09

标签: c++ windows visual-studio dll linker

链接可执行文件时,如果它没有引用链接行上某个DLL中的任何符号,它还会在运行时依赖于该DLL吗?

为了使问题具体化,假设我正在从Visual Studio项目foo构建应用程序。

在项目属性>下链接器>输入>附加依赖项我已指定bar.lib bar.dll的导入库,即使不需要成功链接foo.exe

我是否还需要在我的应用程序中分发bar.dll,因为我已将其标记为链接依赖项?

1 个答案:

答案 0 :(得分:1)

不,不需要。

导入库只有一个库,EXE将只包含对所用函数的引用。顺便验证这一点,您可以使用DUMPBIN.EXE实用程序或依赖项walker(请参阅http://www.dependencywalker.com/),它们是Visual Studio程序包的一部分。只需键入DUMPBIN.EXE foo.exe /imports或使用依赖性walker打开foo.exe。