C++ AWScript:未定义的“AWS::免费(空洞*)” 我通过阅读Stroustrup的书学习C++,我正在练习一些与工作相关的代码。

C++ AWScript:未定义的“AWS::免费(空洞*)” 我通过阅读Stroustrup的书学习C++,我正在练习一些与工作相关的代码。,c++,amazon-web-services,C++,Amazon Web Services,我需要编写一些调用Amazon Simple Systems Manager的小代码,如果我使用python,大约需要5分钟,但这是为了学习 我需要做的第一件事是创建一个具有访问和密钥的对象。这比我想象的要难 #include <aws/core/Aws.h> #include <aws/core/auth/AWSCredentialsProvider.h> ... char const* AWS_ACCESS_KEY_ID = "aaaaaaa"; char const

我需要编写一些调用Amazon Simple Systems Manager的小代码,如果我使用python,大约需要5分钟,但这是为了学习

我需要做的第一件事是创建一个具有访问和密钥的对象。这比我想象的要难

#include <aws/core/Aws.h>
#include <aws/core/auth/AWSCredentialsProvider.h>
...
char const* AWS_ACCESS_KEY_ID = "aaaaaaa";
char const* AWS_SECRET_ACCESS_KEY = "bbbbb";

Aws::Auth::AWSCredentials creds(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY);
但我得到了以下错误:

In function `Aws::Allocator<char>::deallocate(char*, unsigned long)':
main.cpp: undefined reference to `Aws::Free(void*)'
我能想到的最好的办法是这是一个关于如何工作的问题

根据文档,它是typedef std::basic_string,Aws::Allocator>


我查看了Basic字符串,这只是标准的库字符串,除了我丢失的。

< P>这里是我使用简单的程序来测试证书的头,使用Amazon C++ SDK:

#include <stdio.h>
#include <tchar.h>
#include <aws/core/Aws.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/logging/DefaultLogSystem.h>
#include <aws/core/utils/logging/AWSLogging.h>
#include <aws/core/auth/AWSCredentialsProvider.h>
#include <aws/core/auth/AWSCredentialsProviderChain.h>
在链接器中包括aws-cpp-sdk-core.lib库


注意:我正在使用Visual Studio构建我的项目。

也许可以尝试解释一下你不喜欢什么,而不是否决投票?问得不对吗?我问之前谷歌搜索不够吗?未定义的引用意味着链接器找不到这个函数,这通常意味着您没有指定链接所需的lib。检查需要哪些LIB的文档。@Sam.很抱歉有人否决了你的问题。我只是投了更高的票。我在AWS C++ SDK有很多经验。学习SDK的Amazon编码风格需要一些时间。用你的源代码发布新问题,当我有空时,我会尝试提供帮助。@JohnHanley非常感谢你的帮助!这个社区有时会很艰难。有时这是有道理的,但有时并不总是。你的声誉很高,不应该发生这种情况。我知道那种感觉。当我的答案被选为最佳答案时,我甚至被否决了。谢谢!我在命令行中使用LinuxG++-std=c++11,但这仍然非常有用!