c++ 编译llvm/clang时发生致命错误-找不到'cstddef'文件

roejwanj  于 2023-02-17  发布在  其他
关注(0)|答案(2)|浏览(456)

尝试编译llvm/clang时

../llvm/configure --enable-cxx11=yes --enable-libcpp=yes 
  --enable-optimized=yes --prefix=/usr/local --enable-targets=all 
  --with-gcc-toolchain=/usr/local/bin --enable-bindings=auto

将出现以下错误:

[...]llvm/include/llvm/Support/AlignOf.h:19:10: fatal error: 'cstddef' file not found
#include <cstddef>
         ^
1 error generated.
rm: [...]/llvm_build/lib/Support/Release+Asserts/APFloat.d.tmp: No such file or directory
make[1]: *** [[...]/llvm_build/lib/Support/Release+Asserts/APFloat.o] Error 1
make: *** [all] Error 1

但是cstddef确实存在(在/usr/local/include/c++/4.8.0/中),将--includedir=/usr/local/include/c++/4.8.0/添加到配置中也没有帮助。
这可能是什么原因?

kse8i1jr

kse8i1jr1#

尝试使用cmake生成或重新安装下面的依赖项

mkdir build
cd build/
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_TARGETS_TO_BUILD="X86_64;JSBackend" \
-DLLVM_INCLUDE_EXAMPLES=OFF

我遇到了类似的错误,安装了基本的gcc-4.8libstdc++-4.8库。至少对我有效。

sudo apt-get install build-essential

祝你好运希望能成功

相关问题