xcode — сборка приложения для командной строки macOS C ++ с переполнением стека aws-sdk

Я пытаюсь понять рабочий процесс для включения aws-sdk-c ++ в небольшом примере приложения командной строки в Xcode 8.3.3 (8E3004b) на macOS 10.12.6 (16G29). Я следовал инструкциям Вот, и я могу сделать, сделать, и сделать установку нормально. Но, когда я пытаюсь построить приложение командной строки в XCode, я получаю эту ошибку:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/ctime:56:9: No member named 'clock_t' in the global namespace

Xcode дает мне около 20 из них и сдается. Мои пути поиска по заголовкам установлены в $(SRCROOT)/test/includeрекурсивный. Похоже, Xcode может найти заголовочные файлы AWS SDK, но не стандартные системные заголовочные файлы. Если я удаляю путь к AWS SDK, Xcode (очевидно) не может его найти и выдает ошибку с одной ошибкой.

Я добавляю библиотеки .a на этапе сборки Link Binary With Libraries, поэтому я подумал, что если я включу заголовки, я смогу их использовать. Я явно не думаю о чем-то прямо здесь, поэтому любая помощь будет оценена.

Файл C ++, который я пытаюсь скомпилировать:

#include <iostream>
#include <aws/core/Aws.h>
#include <aws/s3/S3Client.h>
#include <aws/s3/model/Bucket.h>int main(int argc, char** argv)
{
Aws::SDKOptions options;
Aws::InitAPI(options);
{
Aws::S3::S3Client s3_client;
auto outcome = s3_client.ListBuckets();

if (outcome.IsSuccess()) {
std::cout << "Your Amazon S3 buckets:" << std::endl;

Aws::Vector<Aws::S3::Model::Bucket> bucket_list =
outcome.GetResult().GetBuckets();

for (auto const &bucket: bucket_list) {
std::cout << "  * " << bucket.GetName() << std::endl;
}
} else {
std::cout << "ListBuckets error: "<< outcome.GetError().GetExceptionName() << " - "<< outcome.GetError().GetMessage() << std::endl;
}
}
Aws::ShutdownAPI(options);
}

0

Решение

Я понял. Я должен был удалить рекурсивный параметр из /usr/local/include в пользовательских путях поиска заголовка.

Теперь он компилируется нормально.

0

Другие решения

Других решений пока нет …