无法使用 OpenSSL 1.1.1 构建 activemq CMS 3.9.5 [英] Failed to build activemq CMS 3.9.5 with OpenSSL 1.1.1

查看:26
本文介绍了无法使用 OpenSSL 1.1.1 构建 activemq CMS 3.9.5的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ActiveMQ CPP 库版本 3.9.5 状态的自述文件

Readme.txt for ActiveMQ CPP library version 3.9.5 states

如果您想使用 SSL 传输,那么您需要有OpenSSL 及其包含安装在您的系统上.我们建议您使用 1.0.0 或更高版本以获得最佳性能和安全性,但是0.9.8 的版本也可以工作.

If you wish to use the SSL Transport then you will need to have OpenSSL and its includes installed on your system. We recommend that you use version 1.0.0 or higher for best performance and security, but version from 0.9.8 are also known to work.

我正在尝试使用 Visual Studio 项目(包含在 activemq-cpp 3.9.5 发行版中)使用 OpenSSL 1.1.1 构建 activemq cms 3.9.5,看起来 CRYPTO_malloc_init() 已从 OpenSSL 1.1.1 中删除,这样我在 OpenSSLContextSpi.cpp 中遇到编译错误

I'm trying to build activemq cms 3.9.5 with OpenSSL 1.1.1 using Visual Studio project (included into activemq-cpp 3.9.5 distribution) and looks like CRYPTO_malloc_init() is removed from OpenSSL 1.1.1, such that I'm having compilation error in OpenSSLContextSpi.cpp

#ifdef HAVE_OPENSSL
    // General library initialization.
#ifdef WIN32
    CRYPTO_malloc_init();
#endif
    SSL_load_error_strings();
    SSL_library_init();
    OpenSSL_add_all_algorithms();

...而 OpenSSL 1.1.1 定义了另一个宏

... while OpenSSL 1.1.1 has define another macro

#define OPENSSL_malloc_init() \
    CRYPTO_set_mem_functions(CRYPTO_malloc, CRYPTO_realloc, CRYPTO_free)

我发现了以下内容https://stackoverflow.com/questions/46005827/does-activemq-cpp-3-9-4-support-openssl-1-1-0/55131365#55131365但我不清楚它是否已解决,我在正确构建它时遇到了问题,还是版本 3.9.5 实际上不支持 OpenSSL 1.1.1?任何帮助或澄清将不胜感激

I found the following https://stackoverflow.com/questions/46005827/does-activemq-cpp-3-9-4-support-openssl-1-1-0/55131365#55131365 but I'm not clear whether it was addressed and I'm having the problem to build it properly or OpenSSL 1.1.1 is not actually supported by version 3.9.5? Any help or clarification would be appreciated

推荐答案

该版本的 CMS 客户端不支持 OpenSSL 1.1.1,因此很可能不允许客户端构建,如果确实构建了它很可能会失败.CMS 客户端并未积极开发,因此我会查看替代客户端库,例如 Apache Qpid 项目为例.

OpenSSL 1.1.1 is not supported in that version of the CMS client and so mostly likely won't allow the client to build, and if it does build it'd likely fail. The CMS client is not actively being developed so I would look at alternate client libraries such as an AMQP client for the Apache Qpid project for instance.

这篇关于无法使用 OpenSSL 1.1.1 构建 activemq CMS 3.9.5的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆