因为一个项目使用到了aws-sdk-cpp,Amazon Web Services在C++下的依赖库,正好本文记录一下在Windows平台下的编译步骤。

本次的编译平台是:Visual Studio 2022,Windows 11,aws-sdk-cpp的版本是 1.11.285

更多介绍和文档,可以看项目首页:aws/aws-sdk-cpp: AWS SDK for C++

适用于 C++ 的 AWS SDK 在 Windows 上构建 - 适用于 C++ 的 AWS SDK

首先是拉取项目:

# 官方推荐
git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp

# 拉取指定分支,并手动初始化子模块
git clone --branch 1.11.285 --depth 1 https://github.com/aws/aws-sdk-cpp.git
cd aws-sdk-cpp
git submodule update --init --recursive

ScreenShot_2025-10-17_232340_108.webp

ScreenShot_2025-10-17_232346_117.webp

上级目录里,创建编译目录:

mkdir sdk_build
cd sdk_build

然后运行cmake进行生成,我这里构建了全部 AWS 服务,其实没必要,按需配置就行:

ScreenShot_2025-10-17_232601_400.webp

参数里面加-DBUILD_ONLY="s3",就可以只编译Amazon S3 服务包了。

等待环境配置:

ScreenShot_2025-10-17_232611_788.webp

直到完成:

ScreenShot_2025-10-18_004027_904.webp

确定前面的操作没有问题,就可以开始编译了,如果选择的是全部编译,那就是漫长的等待了。

ScreenShot_2025-10-17_233604_195.webp

后面是一些生成结果的截图。

ScreenShot_2025-10-17_234701_489.webp

ScreenShot_2025-10-18_004040_792.webp

ScreenShot_2025-10-17_233113_355.webp

ScreenShot_2025-10-17_233049_418.webp

生成后的结果就在bin文件夹中。

使用方法可以看Amazon的,也可以看国内厂家的:AWS SDK for C++_使用指南_对象存储 - 七牛开发者中心