在visual studio中如何将所有.libs包含在一个文件夹中

AMM*_*AMM 13 static-linking visual-studio visual-c++

我正在尝试用另一个项目构建一个项目.那里有很多库,我不确定所需的未引用符号在哪里.

有没有办法.lib在编译时包含所有文件?

我已将该lib目录作为链接器的附加输入,但它要求包含单个.lib文件.是否可以选择.lib在此文件夹中包含所有内容?

Jos*_*che 15

bigD的答案是对的.

在VS 2012中,您实际上要执行此操作的位置是右键单击项目,然后执行:

属性>配置属性>链接器>命令行>其他选项

在该框中,您只需输入:

"[libFolder]\*.lib"
Run Code Online (Sandbox Code Playgroud)

您可以通过用空格分隔位置来拥有多个位置,如下所示:

"[libFolder1]\*.lib" "[libFolder2]\*.lib"
Run Code Online (Sandbox Code Playgroud)


ds-*_*msk 5

您应该只能够编写“ someFolder / *。lib”,在其中必须指定要链接的库


Ral*_*alf 4

AFAIK 没有办法做到这一点:你的选择是

  • 将每个库包含在链接器->输入->附加依赖项中

  • 通过 pragma 指令在源文件中包含库,即添加

杂注注释(lib, "some_lib.lib" )

  • 如果项目是解决方案的一部分,您可以将它们选择为“项目依赖项”

最简单的方法是使用编译指示,因为调试和发布只需执行一次。例如,您可以列出 lib 目录的目录列表,然后将指令的其余部分复制并粘贴到源文件中。

此外,要获取静态库的符号列表,您可以在 lib 文件上运行 dumpbin 工具(AFAIR 使用 /ALL 选项)。