使用 clang 编译 c++ 时出错
Error using clang to compile c++
我一直在尝试使用 clang 在 c++ 中编译一个简单的 hello world 程序。现在在过去,我已经能够使用以下命令执行此操作:
clang -lc++ hello.cpp -o hello
当我尝试这样做时,我收到错误:
/usr/bin/ld: cannot find -lc++
Clang:错误:链接器命令失败,退出代码为 1
如果我使用 g++,它可以编译而没有错误。为什么叮当声会出现这个问题?
你需要安装 libc++ 库。
尝试是否正在使用 ubuntu:
sudo bash -c "cat >> /etc/apt/sources.list" << LLVMAPT
# LLVM
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty main
# 3.5
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.5 main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.5 main
# 3.6
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main
LLVMAPT
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key|sudo apt-key add -
sudo apt-get update -y
sudo apt-get install -y clang-3.6 lldb-3.6 libc++-dev libc++abi-dev
如果上面的脚本不起作用,或者您不使用 ubuntu,请查看以下网站下载该库:
http://libcxx.llvm.org/
http://libcxx.llvm.org/docs/BuildingLibcxx.html
Clang 编译 C 语言,Clang++ 编译C++。这些是不同的语言,因此您需要为每种语言使用单独的编译器。
前段时间我也遇到了麻烦。我尝试链接大量库(-lstdc++
等),从源代码构建 stdlib 等,但没有任何效果。这是一个法官问题,直到我意识到我必须使用clang++
。
所以你也是,你需要clang++
,而不是clang
.
相关文章:
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- C++-试图将函数指针推回到另一个CPP文件中的矢量时出错
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 在Google Kick start中提交时出错
- 在c++中访问int到类对象的映射时出错
- 分段错误当我试图运行程序时出错
- 使用dynamic_cast和构造函数时出错
- CHECK(调用)函数在Google Colab中出错
- 用pybind11包装C++抽象类时出错
- 为x86而非x64编译时出错
- 从R调用C++函数并对其进行集成时出错
- 这个函数哪里出错了
- C++ 创建包含链表和字符串的对象的链接列表时出错
- 为重写std::exception的库生成swig接口时出错
- 导入/导出变量时出错
- PrintWindow函数在notepad.exe中出错