如果我使用了其他人的多个静态库,如何在 vs2013 中只向客户端提供一个静态库?

How to only offer one static lib in vs2013 to client if i have use several static lib from others?

我创建了一个静态库(以a.lib为例)文件供其他人使用我的API功能,但是,我使用同事的其他API功能(这些API 在 b.lib、c.lib、...)中得到满足。当我在一个新项目上测试时,只包含 a.lib,我会得到一个错误,"unsolved external symbol..."。我想知道是否有一种方法可以只向使用我的 API 功能的用户提供 a.lib。所以其他静态库文件(b.lib, c.lib, ...) 不需要再提供给用户了。

我认为您可以使用 visual studio 命令提示符将多个静态库合并为一个 *.lib。

使用 Lib 命令类似 lib /OUT:filename.lib input1.lib input2.lib ....

这是参考页https://msdn.microsoft.com/en-us/library/7ykb2k5f.aspx

这可能会有所帮助:Linking static libraries to other static libraries