【问题标题】:Broken CXX compiler error on cmake when building aws-sdk-cpp for iOS为 iOS 构建 aws-sdk-cpp 时,cmake 上出现损坏的 CXX 编译器错误
【发布时间】:2020-08-27 02:35:57
【问题描述】:

我想为我从link 下载的 iOS 构建静态 aws libs 核心、s3 和传输。我正在使用 macOS High Sierra 10.13.6Xcode 10.0

我正在尝试使用此命令从链接的源代码上运行 cmake:

cmake ../aws-sdk-cpp 
-DCMAKE_C_COMPILER=clang 
-DCMAKE_C_FLAGS="-mios-version-min=11" 
-DCMAKE_CXX_COMPILER=clang++ 
-DCMAKE_CXX_FLAGS="-mios-version-min=11" 
-DCMAKE_BUILD_TYPE=Release 
-DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk 
-DFORCE_CURL=ON 
-DENABLE_OPENSSL_ENCRYPTION=OFF 
-DCMAKE_INSTALL_PREFIX=/Users/user/Desktop/script/lib/ios/arm64/aws-sdk-cpp 
-DCPP_STANDARD=14 
-DSIMPLE_INSTALL=ON 
-DENABLE_TESTING=OFF 
-DCMAKE_OSX_ARCHITECTURES=arm64 
-DBUILD_ONLY="core;s3;transfer" 
-DBUILD_SHARED_LIBS=OFF

但我收到关于broken compiler CXX的错误:

-- 检查工作的 CXX 编译器:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++

-- 检查工作的 CXX 编译器:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ ——坏了

CMake 错误 /usr/local/Cellar/cmake/3.12.3/share/cmake/Modules/CMakeTestCXXCompiler.cmake:45 (消息):C++ 编译器

"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++"

无法编译简单的测试程序。

失败,输出如下:

Change Dir: /Users/user/Desktop/script/lib/ios/build/aws-sdk-cpp-iPhoneOS/aws-sdk-cpp/build/.deps/CMakeFiles/CMakeTmp

我在这个主题上看到过类似的问题,但我找不到任何解决方案。提前致谢。

当前版本是:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ --version

Apple LLVM version 10.0.0 (clang-1000.11.45.2)
Target: x86_64-apple-darwin17.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

【问题讨论】:

  • 听起来您需要重新安装 Xcode CLT 并先查看是否可以修复它。如果它仍然不起作用,您可能需要自制安装 gcc 或 llvm 并使用其中一个作为编译器,看看是否可以修复它。
  • @sweenish 谢谢你的回复。我会按照你的建议尝试。
  • 尝试上述方法后,问题仍未解决。如果我找到解决方案,我将在此处发布更新。还是谢谢

标签: c++ ios macos amazon-web-services static-libraries


【解决方案1】:

下载aws源后,尝试使用旧版本,例如:

git checkout 1.7.9 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 2013-06-10
    • 1970-01-01
    • 1970-01-01
    • 2016-06-10
    • 1970-01-01
    相关资源
    最近更新 更多