gpt4 book ai didi

c++ - clang:警告:没有这样的 sysroot 目录:编译 LLVM (3.9.0) 时为 '-mmacosx-version-min=10.5'

转载 作者:行者123 更新时间:2023-11-28 05:31:23 28 4
gpt4 key购买 nike

我正在使用 GCC 在我的 Mac (OsX) 上使用 CMake (3.6.2) 编译 LLVM (3.9.0),但不知何故我在遵循 GCC 配置时遇到以下错误

Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

[50%] Building C object projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.eprintf.dir/eprintf.c.o
clang: warning: no such sysroot directory: '-mmacosx-version-min=10.5'
/Users/Ritzy/llvm_src/llvm-3.9.0.src/projects/compiler-rt/lib/builtins/eprintf.c:14:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
^
1 error generated.
make[2]: *** [projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.eprintf.dir/eprintf.c.o] Error 1
make[1]: *** [projects/compiler-rt/lib/builtins/CMakeFiles/clang_rt.eprintf.dir/all] Error 2
make: *** [all] Error 2

我正在使用以下 CMake 命令:

cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR  ..
cmake --build .

我花了几个小时来找出问题所在。甚至尝试使用 gcc6 和 clang 但徒劳无功。

最佳答案

这是提供给 MacOS/X clang 调用的命令行标志的示例:

-pipe -stdlib=libc++ -std=c++11 -stdlib=libc++ -O2 -std=gnu++11 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -mmacosx-version-min=10.7 -Wall -W -fPIC $(DEFINES)

特别注意这部分:

-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -mmacosx-version-min=10.7

-isysroot 告诉编译器在哪里寻找头文件,然后下一个参数 -mmacosx-version-min=10.7 告诉它保持向后兼容性的最低 MacOS/X 版本。

在您的情况下,您的 CMake 调用可能没有为 -isysroot 参数指定值,而是可能具有如下内容:

-isysroot   -mmacosx-version-min=10.5

... 由于某种原因,在 -isysroot 标志之后提供的路径被留空(即空字符串),这就是为什么“-mmacosx-version-min=10.5”解释为在其中查找头文件的路径(这当然不起作用)。

至于路径参数为什么留空,这是你必须自己调查的事情。

关于c++ - clang:警告:没有这样的 sysroot 目录:编译 LLVM (3.9.0) 时为 '-mmacosx-version-min=10.5',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39438048/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com