建筑物 ACE_SSL

Building ACE_SSL

我在使用 OpenSSL 构建 ACE_SSL 库时遇到问题。

我正在使用 ACE 6.4.1 和 OpenSSL 1.1.0c,这是 github 上的最新版本(我假设它们是兼容的,尽管 ACE SSL 的构建说明似乎引用了 out32 和 inc32这似乎是构建以前版本的 OpenSSL 而不是这个版本的输出。

我成功构建了 openssl 并且所有测试都正常 运行。之后我 运行 ACE 随附的 .mwc 脚本:

bin\mwc.pl -type vc14 -features "ssl=1" ACE.mwc

这生成了一个 Visual Studio 2015 解决方案,它现在确实包含一个名为 SSL 的项目和其他几个相关项目。但是,当我尝试构建时,编译器抱怨使用了不完整类型 "BIO_METHOD",它是 "struct bio_method_st" 的类型定义,定义在 openssl header "bio.h".

在 openssl 文件夹中搜索 "struct bio_method_st" 时,我只找到一个对它的引用,它在 header 中,但它只包含声明而不包含定义。与旧版本的在线 openssl 相比,header 也用于包含定义。

我还在网上找到了一个 repo,其中包含一个脚本,可以在此处下载并使用 ssl 构建 ace,64 位版本:

https://github.com/sphawk/build-ace

脚本 运行s 和构建正常,但它使用 ACE 版本 6.3.3 和 openssl 版本 1.0.2f(今年 1 月发布)。我可以很容易地修改它来构建我需要的 32 位库,并将它更改为使用最新版本的 ACE。使用最新版本的 openssl 需要做更多更改,因为构建步骤发生了变化,因此我可以节省时间并使用该版本的 openssl。那会带来什么问题吗?我假设即使新版本在某些方面有所改进,也不会使旧版本过时吧?

最重要的是,我无法确定问题是我做错了什么,还是 ACE 与这个版本的 openssl 不兼容,我应该使用旧版本。我只是想 post 这个以防万一有人 运行 进入类似的东西并且可以在我做任何额外的工作之前指出正确的方向。谢谢!

ACE 尚不支持 OpenSSL 1。1.x。请为此在 github 打开一个问题。也许您可以创建一个修复程序,如果是这样,请打开一个包含必要更改的拉取请求。