dll - 使用 MinGW64 在 Windows 中创建 OpenSSL dll

标签 dll openssl mingw-w64

我正在尝试为我在 Windows 中的项目构建 OpenSSL。我为此使用 MinGW64。但是,当尝试构建共享库时,OpenSSL dll.a 仍然是存档文件。我按如下方式配置 OpenSSL:

Configure --cross-compile-prefix=x86_64-w64-mingw32- --install-prefix=C:\install --prefix=/openssl-1.0.1e shared no-idea no-rc5 no-mdc2 mingw64

我希望有人能帮助我解决我做错的事情。

最佳答案

我认为 OpenSSL 不支持配置。

ConfigureMinGW64 目标,但看起来它只构建静态存档。

# MinGW
"mingw", "gcc:-mno-cygwin -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -fomit-frame-pointer 
-O3 -march=i486 -Wall::-D_MT:MINGW32:-lws2_32 -lgdi32 -lcrypt32:BN_LLONG 
${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_asm}:coff:win32:
cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin:.dll.a",
...
"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE 
-D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL 
DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:
-mno-cygwin:.dll.a",

但我认为它应该被调用为:

perl Configure mingw64 no-shared no-asm --prefix=/C/install

如果您愿意,您可以复制/粘贴 mingw64 目标并打开旋钮。我经常在交叉编译时复制一个类似的目标。

OpenSSL for Windows也可能有帮助。

关于dll - 使用 MinGW64 在 Windows 中创建 OpenSSL dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21393937/

相关文章:

grails - 在 HTTPS 上运行 Grails

encryption - 在命令行中使用 openssl 使用公钥解密

c - 在 C 程序中使用外部库

c# - C# 库是否有 OnLoad 事件?

dll - 对于 wintrust.dll 来说,Dependency walker 非常慢

batch-file - 自动将PEM文件拆分为多个证书

如果不提供 ".exe",Cmd 无法运行我的可执行文件

windows - 如何在 Windows 10 上为代码块 17.02 指定 MinGW64?

gcc - 从 Linux 编译 Vala for Windows

python - 使用 ctypes 将指针传递给 dll 函数