C ++的AWS SDK為Amazon Web Services(AWS)提供了現代的C ++(版本C ++ 11或更高版本)。它本來可以通過低水平和高級SDK來表現並充分發揮作用,同時最大程度地減少依賴關係並提供平台可移植性(Windows,OSX,Linux和Mobile)。
C ++的AWS SDK現在已普遍可用,建議用於生產。我們邀請客戶通過提交拉動請求並通過GitHub問題向我們發送反饋和想法來加入開發工作。
為您的平台安裝CMAKE和相關的構建工具。確保它們在可執行路徑中可用。
用subsodules克隆這個存儲庫
git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp創建您的構建目錄。用構建目錄名稱替換<BUILD_DIR> :
建立項目:
cd < BUILD_DIR >
cmake < path-to-root-of-this-source-code >
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_INSTALL_PREFIX= < path-to-install >
-DBUILD_ONLY= " s3 "
cmake --build . --config=Debug
cmake --install . --config=Debug注意: build_only是一個可選的標誌,用於僅列出您使用的服務。構建整個SDK可能需要很長時間。另外,查看CMAKE參數列表
要在Linux中編譯,您必須具有libcurl,libopenssl的標頭文件。這些軟件包通常在您的軟件包管理器中可用。
基於Debian的Linux sudo apt-get install libcurl-dev
基於RPM sudo [yum|dnf|zypper] install libcurl-devel Linux發行
除了系統如何消耗捲曲依賴項和編譯器外,為MacOS建造與在 *NIX系統上的構建大致相同。
您必須安裝Xcode命令行工具。這是Apple Clang和GCC所必需的。這也安裝了libcurl。
配x 如果您使用的是Macos Sonoma,則有一個已知的問題,其中MacOS上使用Libcurl版本8.4.0可能會導致問題。捲髮和蘋果正在跟踪此問題。同時,請使用Homebrew的更新版本的Curl。您可以通過cmake_prefix_path將其包括在項目中。cmake -DCMAKE_PREFIX_PATH="/opt/homebrew/opt/curl/" -DAUTORUN_UNIT_TESTS=OFF -DBUILD_ONLY="s3" -DCMAKE_INSTALL_PREFIX="~/sdk-install" ..
要為Android構建,請在CMAKE命令行中添加-DTARGET_ARCH=ANDROID 。當前,我們使用Android NDK 19C支持Android API,並使用Android NDK提供的內置CMAKE工具鏈文件,假設您擁有適當的環境變量(Android_NDK)設置。
在Windows上為Android建造需要一些其他設置。特別是,您需要從Visual Studio開發人員命令提示(2015年或更高)中運行CMAKE。此外,您需要在路徑中需要“ git”和“補丁”。如果您在Windows系統上安裝了GIT,則該補丁可能會在兄弟姐妹目錄(.../git/usr/bin/)中找到。一旦您驗證了這些要求,您的CMAKE命令行將略有更改以使用NMAKE:
cmake -G " NMake Makefiles " ` -DTARGET_ARCH=ANDROID ` < other options > ..Nmake以串行方式構建目標。為了使事情更快,我們建議安裝JOM作為NMAKE的替代方案,然後將CMAKE調用更改為:
cmake -G " NMake Makefiles JOM " ` -DTARGET_ARCH=ANDROID ` < other options > ..您可以使用VCPKG依賴項管理器下載並安裝AWS-SDK-CPP:
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install aws-sdk-cpp
Microsoft團隊成員和社區貢獻者保持最新的AWS-SDK-CPP端口。如果該版本已過時,請在VCPKG存儲庫上創建問題或拉出請求。
有關SDK主要版本和我們的基本依賴性的維護和支持的信息,請參見AWS SDK和工具共享配置和憑據參考指南中的以下信息
與我們的團隊互動的最佳方法是通過Github。您可以為指導問題或錯誤報告或功能請求打開討論。
您可能還可能會在社區資源上找到帶有標籤#AWS-SDK-CPP的stackoverflow的幫助。如果您有AWS支持的支持計劃,則還可以創建一個新的支持案例。
在開發問題之前,請確保還要查看我們的資源: