如何将.lib 导入.dll?
Posted
技术标签:
【中文标题】如何将.lib 导入.dll?【英文标题】:How to import .lib into .dll? 【发布时间】:2015-01-05 11:02:23 【问题描述】:我正在尝试将 dll 编码为使用 C++ 的某些系统的插件。这个插件将使用另一个库,它是一个 .lib 文件,因此应该只输出一个 .dll 文件。所以我希望这个其他 .lib 文件包含在我的 dll 中。应该只有一个dll文件,其中应该包含lib文件,这样我就可以将这个dll文件作为一个文件插件包含到系统中。这可能吗?如何实现?
我正在使用 Visual C++ 2010 Express。
谢谢。
【问题讨论】:
我稍微编辑了这个问题。我想要的只是一个包含 lib 的 dll 文件。我会将该 dll 文件作为插件导入到其他系统中。我尝试将其链接,但生成的 dll 文件似乎不包含 lib。也许我做错了什么。 【参考方案1】:不幸的是,VS 链接器没有与ld
的--whole-archive
等效的选项,可用于包含整个库。
最好的办法是解压缩库并链接到生成的目标文件中。您可以为此使用图书管理员(lib
工具)。要列出库的所有成员,请使用 lib /LIST
。目标文件必须一一提取,使用lib /EXTRACT:member
。
【讨论】:
工作就像一个魅力!谢谢。以上是关于如何将.lib 导入.dll?的主要内容,如果未能解决你的问题,请参考以下文章