azure c sdk 需要哪个版本的 openssl?

问题描述

环境:

Ubuntu 18.04
OpenSSL downloaded from github.
Azure IOT C SDK downloaded from github.
Cross compiling for Android NDK version 22.0.7026061

Azure iot C sdk 依赖于 OpenSSL。我已经下载并构建了 openssl。但是,在构建 Azure iot sdk 时,我遇到了不同的错误

首先,我收到错误提示我使用了 OpenSSL 中某些已弃用的函数。通过向 CFLAGS 添加 -Wno-deprecated-declarations,我设法忽略了这些错误

现在,我在 c-utility/adapters/x509_openssl.c 中遇到关于“struct ssl_ctx_st”类型定义不完整的错误

我想知道我是否需要针对 openssl 的特定 git 分支构建 azure iot sdk 代码。问候。

解决方法

documentation 声明 C-SDK 有一些依赖项,并建议使用以下命令正确安装它们(包括开放的 SSL 依赖项):

sudo apt-get update
sudo apt-get install -y git cmake build-essential curl libcurl4-openssl-dev libssl-dev uuid-devC

CMake 至少需要 4.4.7 版本。

然后尝试使用以下命令构建:

cd azure-iot-sdk-c
mkdir cmake
cd cmake
cmake ..
cmake --build .