ios - cmake 命令 CXX 编译器 ABI 信息失败

标签 ios gcc compiler-construction cmake

我正在尝试安装 opengl 并运行 cmake 文件,它给出了这些错误。请帮忙看看是什么原因以及如何纠正这个问题

-- The CXX compiler identification is Clang 5.0.0
-- The C compiler identification is Clang 5.0.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - failed

最佳答案

您的操作系统是什么?之所以问这个是因为我最近有一个类似的问题:在Windows 10下我尝试在其中使用Cygwin和CMake编译几个C++项目,并且C和C++编译器ABI信息的检测一直失败。

通过以下方式设法解决了问题:在Cygwin的根目录下,大概在usr/share/cmake-3.6.2路径下可以找到CMake的安装文件。 (请注意,CMake 的版本号在您的系统中可能会有所不同,因为您多年前就提出了问题。)此路径在 Linux 下也应该是准确的(或至少是默认的)。

Modules 目录中,您可以找到 CMakeDetermineCompilerABI.cmake 文件,该文件描述了 CMake 如何确定编译器的 ABI 信息。当我向这个文件添加几个额外的日志记录语句时,我意识到 CMake 除了没有生成所有必要的文件外,还使用了一些来自 Strawberry Perl (C:\Strawberry\bin\...) 我安装的二进制文件不久前出于完全不同的原因在我的系统上。

发现这很奇怪,我删除了 Strawberry(我不再需要它了),CMake 开始正常工作。 :)(无论如何在 Cygwin 中使用外部的东西似乎都不好。)另一种解决方法是从 PATH 环境变量中删除 Strawberry。

关于ios - cmake 命令 CXX 编译器 ABI 信息失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21043693/

相关文章:

linux - 如何从生成的二进制文件中查看哪些静态库用于 gcc/g++ 编译?

ios - 如果从 NavigationController 呈现 viewController,则旋转父 View Controller

ios - 在 Swift 4 中更新具有多种类型的标签

ios - 为什么 React Native Picker 在 iOS 上不显示?

c++ - 限制成员函数的限定符(限制此指针)

compiler-construction - 在哪些平台/编译器上 sizeof(short) 不是 2?

ios - iOS-卡在numberOfRowsInSection上:具有多个部分

c - GCC 的#pragma 中断

c - 我如何将 "register"我的库 libfoo.so 与 `-lfoo` 链接起来?

c++ - 如何根据 LLVM 中 LoadInst 的结果解析 AllocaInst?