aws-sdk-cpp | AWS SDK for C++ provides a modern C++ ( version C++ | AWS library
kandi X-RAY | aws-sdk-cpp Summary
kandi X-RAY | aws-sdk-cpp Summary
The AWS SDK for C++ provides a modern C++ (version C++ 11 or later) interface for Amazon Web Services (AWS). It is meant to be performant and fully functioning with low- and high-level SDKs, while minimizing dependencies and providing platform portability (Windows, OSX, Linux, and mobile). AWS SDK for C++ is in now in General Availability and recommended for production use. We invite our customers to join the development efforts by submitting pull requests and sending us feedback and ideas via GitHub Issues.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of aws-sdk-cpp
aws-sdk-cpp Key Features
aws-sdk-cpp Examples and Code Snippets
Community Discussions
Trending Discussions on aws-sdk-cpp
QUESTION
I am trying to cross-compile the aws-sdk-cpp and I am getting the following error just the very first time I run CMAKE. If I run it a second time it compiles and links and I have tested the application and I can indeed use the aws-sdk-cpp functionality. I have searched and searched for days and tried all kinds of things:
- Setting environment variable for OPENSSL_ROOT_DIR
- Setting it in a cmake variable, etc.
I print the OPENSSL_ROOT_DIR
variable right before the call to
ANSWER
Answered 2022-Mar-09 at 04:58Ok so I have figured what was going on.
the issue was that I was setting the values for
QUESTION
We previously built aws-sdk-cpp
locally and designed a library around it. Now I'm upgrading to use Conan provided aws-sdk-cpp
instead of a locally built one, but I'm getting errors from our library.
I call AWS functions such as the following,
...ANSWER
Answered 2021-Sep-02 at 17:22Is there a way to make AWS methods accept std::string?
Yes. These functions accept std::string if custom memory management is disabled:
If the compile-time constant is enabled (on), the types resolve to STL types with a custom allocator connected to the AWS memory system.
If the compile-time constant is disabled (off), all Aws::* types resolve to the corresponding default std::* type.
It looks like the former is what you get, and the latter is what you expect - perhaps you've switched from linking the SDK statically (default off) to linking the SDK dynamically (default on)?
In any case, you'll either have to somehow build the SDK with custom memory management disabled, use types like Aws::String
yourself, or convert between Aws::String and std::string as needed.
QUESTION
AWS recently introduced S3 Object Lambda, however looking at the online documentation:
- Writing and debugging Lambda functions for S3 Object Lambda Access Points
- Introducing Amazon S3 Object Lambda – Use Your Code to Process Data as It Is Being Retrieved from S3
- How to use Amazon S3 Object Lambda to generate thumbnails
I can only find example for Java, Python and NodeJS.
Is there an example out there for c++ that I missed ? In particular I fail to understand what is the equivalent in c++ for getObjectContext
(python/nodejs) / S3ObjectLambdaEvent
(java) ? How should I retrieve outputRoute
, outputToken
, inputS3Url
? The integration test does not make it particularly clear either:
ANSWER
Answered 2021-May-25 at 18:25S3 Object Lambda is using the AWS Lambda service. AWS Lambda does only support the following runtimes "natively":
- Go
- .NET Core
- Ruby
- Java
- Python
- NodeJS
C++ is support through "custom" runtimes or through Docker containers. Usually, the AWS documentation only covers the "natively" supported runtimes and even then not all (as you noticed). Mostly they have examples for the most popular ones.
So what you need to look for are C++ Lambda examples, examples using the C++ AWS SDK and reference documentation.
Using the reference documentation and the Java/Python/NodeJS examples, it should be easy to write a C++ version.
For example:
QUESTION
This is a follow up to:
Based on the answer I tried again locally:
...ANSWER
Answered 2021-May-20 at 17:54You need to install the libcrypto, libssl and libcurl.
I had solved the same issue in my Ubuntu machine by running the following commands.
sudo apt-get install libcurl4
sudo apt-get install libcurlpp-dev
sudo apt-get install libcrypto++-dev
Refer: https://github.com/aws/aws-sdk-cpp#other-dependencies
QUESTION
I am trying to follow up suggestion from aws-lamba-cpp to reduce complexity in building my application.
If you choose to build on the same Amazon Linux version used by lambda, you can avoid packaging the C runtime in your zip file.
After reading:
Here is what I tried:
...ANSWER
Answered 2021-May-17 at 07:10Something changed in the past weeks, it worked fine for me before, now I got the same error as you.
Cloning with submodules fixed it for me:
QUESTION
I have an AWS Lambda and am creating a simple C++ application to call it.
Based on the AWS Docs, I went and installed the SDK here https://github.com/aws/aws-sdk-cpp but that seems to add nearly a full GB if I include the whole thing.
Is there something like boto3 for C++?
If not, what is the accepted best way of integrating Lambda calls into a small C++ application?
...ANSWER
Answered 2021-Mar-25 at 20:00Is there something like boto3 for C++?
That's literally the thing you linked to. Boto3 is the AWS SDK for Python. This is the AWS SDK for C++.
What you are missing is that you can install just the packages you need from the SDK, instead of the full SDK.
QUESTION
Asking so I can answer this myself, lost a day to it and want to save other folks the trouble.
Setup:
- Windows (seen on both Windows 10 and Server 2019)
- Visual Studio (seen on both Visual Studio 2017 and Visual Studio 2019)
- cmake 3.19.0-rc1 (latest download as of this post)
- Following instructions at https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/setup.html for Windows build-from-source of the AWS C++ SDK. Happens both for standard build from source and
vcpkg
alternative. Also happens if you try to go build the "3rd party dependencies" mentioned at https://github.com/aws/aws-sdk-cpp manually.
You try something like:
...ANSWER
Answered 2020-Oct-23 at 20:39Completely non-obvious, but the issue appears to be with "cmake 3.19.0-rc1". Changing to cmake 3.18.4 bypassed the issue. I can't tell if this is a cmake issue or an sdk issue, or I'd be posting on somebody's github instead of stackoverflow.
QUESTION
I have a problem with the AWS sdk on a Qt app.
I'm getting the STS tokens from Cognito after a click on a QML button.
The function is working perfectly fine and is printing me the token... as long as the debugger is attached [F5]. If I start the project without debugger (green arrow without bug on it) the returned object is empty.
Without the debugger attached I have the following in the aws logs that I don't have otherwise:
[INFO] 2020-09-18 12:33:02.569 CognitoCachingCredentialsProvider [140678610167936] A parent identity was from cognito which is different from the anonymous identity. Swapping that out now.
[INFO] 2020-09-18 12:33:02.569 CognitoCachingCredentialsProvider [140678610167936] Credentials will expire next at 0
Other logs around looks the same, I even have the STS token shown a couples of lines above this one on both cases:
[DEBUG] 2020-09-18 12:33:02.569 CURL [140678610167936] (DataIn) {"Credentials":{"AccessKeyId":"###","Expiration":1.600435982E9,"SecretKey":"###","SessionToken":"##########"},"IdentityId":""}
I have even edited the SDK and added the following logs which resulted in this (with the debugger attached the first line is also getting shown).
ANSWER
Answered 2020-Sep-24 at 09:37It turns out that the aws sdk is using cJSON which, when parsing numbers, may or may not get the local environment for decoding decimal point. But in both cases it will call double strtod(const char *nptr, char **endptr);
to translate string to double, in the man page we can read (emphasis mine)
A decimal number consists of a nonempty sequence of decimal digits possibly containing a radix character (decimal point, locale-dependent, usually '.'), optionally followed by a decimal exponent. [...]
Apparently cJSON need this compilation variable to compile on Android.
AWS copied the lib here but did not copied the compilation variable ENABLE_LOCALES
which should be enabled by default as stated in the issue linked above.
I am on Ubuntu 18.04, environment in English but dates/number in French (decimal point is ','
here in France).
I am creating an issue on the AWS SDK repo to set the compilation variable ENABLE_LOCALES
and on cJSON to discuss and avoid further error like this one.
A potential fix could also be to force the application to use English locales but that is not always possible.
QUESTION
I'm trying to use the AWS C++ SDK to generate a signed URL for S3, however the Aws::S3::S3Client
constructor seems very slow. In the following example:
ANSWER
Answered 2020-Sep-03 at 23:57When not running on AWS, set:
QUESTION
I want to build static aws libs core, s3 and transfer for iOS which i downloaded from this link. I am using macOS High Sierra 10.13.6 and Xcode 10.0.
I am trying to run cmake on the source from the link with this command:
...ANSWER
Answered 2020-May-12 at 20:07After downloading the aws source, try with older version like:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install aws-sdk-cpp
Getting Started
Issues and Contributions
Getting Help
Using the SDK and Other Topics
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page