使用MinGW64在Windows中创建OpenSSL dll

时间:2014-01-27 23:29:50

标签: 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

我希望有人可以帮我解决我做错的事。

1 个答案:

答案 0 :(得分:2)

我不相信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也可能会有所帮助。