我刚刚获得了新的M1 MacBook Pro,并正在尝试编译我大学工作所需的代码库。这是我所采取的步骤:
- 我将终端设置为始终使用Rosetta。
- 使用
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装Homebrew。 - 使用
brew install cmake
安装CMake。 - 运行
cmake <源路径>
(此操作正常)。 - 运行
make
(此操作失败)。
这是我得到的错误:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stdlib.h:97:15: fatal error:
'stdlib.h' file not found
#include_next <stdlib.h>
我已尝试卸载和重新安装Xcode和CommandLineTools,但没有成功。
当使用cmake gui应用程序时,我遇到了不同的错误。 我将其设置为使用CommandLineTools / SDKs / MacOsX11.0.sdk。
在使用此cmake gui设置生成和配置构建文件后运行make
时,我收到以下错误:
-- The C compiler identification is AppleClang 12.0.0.12000032
-- The CXX compiler identification is AppleClang 12.0.0.12000032
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - broken
CMake Error at /Applications/CMake.app/Contents/share/cmake-3.18/Modules/CMakeTestCCompiler.cmake:66 (message):
The C compiler
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: /Users/freyamurphy/nori/build/ext_build/src/tbb_p-build/CMakeFiles/CMakeTmp
如果我运行命令
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc test.c
(简单的hello world程序),我会得到以下错误:test.c:1:10: fatal error: 'stdio.h' file not found
#include "stdio.h"
但是使用cc test.c
一切正常。(这将运行/usr /bin/cc)。
我觉得可能是Xcode存在问题。有没有人遇到过类似的问题,可以给我一些建议?非常感谢。