【问题标题】:Converting a static library .lib to a dynamic library .dll using MinGW windows 7 [duplicate]使用MinGW windows 7将静态库.lib转换为动态库.dll [重复]
【发布时间】:2015-07-23 17:50:16
【问题描述】:

有人可以指导我如何在 Windows 上使用 MinGW 将 .lib 静态库转换为 .dll 文件。

谢谢。

【问题讨论】:

  • 您无法转换它,但您可以使用静态 .lib 创建一个 dll 并重新导出所有内容。
  • 使用cygwin,可以做gcc -shared -o library.so -lstatic_library。
  • 但是如果静态库是使用不同的编译器编译的,你很可能会被搞砸
  • @Wimmel > 您可以使用静态 .lib 创建一个 dll 并重新导出所有内容,请您详细说明一下。我已经成功地将静态库“.a”转换为 Linux 上的共享对象“.so”。现在我想使用 MinGW 将“.lib”文件转换为 Windows 的“.dll”实际上我使用的库可用作 Linux 的静态库“.a”和 Windows 的“.lib”。我只是想从这些静态库中生成共享库。
  • 我用IJG-JPEG library 对其进行了测试,我需要一个DllMain 来简单地返回TRUE。 gcc -Wl,-export-all-symbols -Wl,-enable-auto-import -Wl,-no-undefined -Wl,--enable-runtime-pseudo-reloc dllmain.c -Wl,-whole-archive jpeg-9a\libjpeg.a -Wl,-no-whole-archive -shared -o jpeg9a.dll

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


【解决方案1】:

非常简单。将库重建为 static 动态库。

如果您没有源代码,请联系供应商获取库的静态动态版本。

【讨论】:

  • 抱歉没能找到你。我有可用的静态库“.lib”我想用它制作一个 .dll。
  • 我的错,我会改变我的答案。
猜你喜欢
  • 1970-01-01
  • 2011-02-04
  • 2011-01-24
  • 1970-01-01
  • 2011-01-06
  • 2012-07-09
  • 2013-04-11
  • 2012-09-22
  • 1970-01-01
相关资源
最近更新 更多