当前位置:   article > 正文

ARM Linux 下 编译 AWS SDK for C++ S3 连接minio及注意事项_交叉编译 aws sdk for c++ s3

交叉编译 aws sdk for c++ s3

最近开发需要实现自建对象存储,并在linux上连接
因为原有的程序是C++的,所以需要C++或C的库,但是minio提供的miniocpp没有编译成功
miniocpp
因为minio符合S3标准,所以也可使用 AWS 的SDK
编译文档

1. 安装依赖

sudo apt-get install libcurl4-openssl-dev libssl-dev uuid-dev zlib1g-dev libpulse-dev
  • 1

2. 下载源码

# https
git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp
# ssh
git clone --recurse-submodules git@github.com:aws/aws-sdk-cpp.git
  • 1
  • 2
  • 3
  • 4

3. 从源代码构建SDK

  1. 创建目录
mkdir sdk_build
cd sdk_build
  • 1
  • 2
  1. 生成构建文件
cmake ../aws-sdk-cpp -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/firefly/workspace/install -DBUILD_ONLY="s3" -DENABLE_TESTING=OFF
# make
make DESTDIR=/home/firefly/workspace/install
make install
  • 1
  • 2
  • 3
  • 4

运行结束即可在 /home/firefly/workspace/install 目录下看到 include 和 lib 文件夹,其中就是头文件和动态库
在这里插入图片描述
在这里插入图片描述

4. 注意事项

  1. cmake 版本
    最低版本为 3.13
  2. 关闭测试
    在运行cmake时需要加上 -DENABLE_TESTING=OFF 关闭测试服务,仅构建S3时不需要运行测试,会导致后续make失败
  3. 调用动态库时报错
    在调用动态库时,报未找到CURL4之类的错误,查看curl的引用或者版本是否有误
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/554361
推荐阅读
相关标签
  

闽ICP备14008679号