【问题标题】:Clang 3.2 build broken after building gcc 4.7构建 gcc 4.7 后 Clang 3.2 构建中断
【发布时间】:2012-05-30 02:46:43
【问题描述】:

所以我知道 Clang(大部分时间)依赖于 Gnu 的 libstdc++3,但是在构建 gcc 4.7.0 之后(因为太棒了!)我似乎遇到了一个问题,clang 的所有路径都是错误的。我是否需要清理我的构建目录并从头开始clang,特别是它给了我缺少的错误位/c++config.h,尽管它在那里并且使用gcc构建得很好

我使用的是 Linux x86,Ubuntu 12.04

【问题讨论】:

  • 啊抱歉,linux x86,ubuntu 12.04。 更新

标签: c++ gcc clang gcc4.7


【解决方案1】:

是的,GCC 的头文件和库的路径包括版本,在您的情况下为 4.7.0,因此您需要使用 --with-gcc-toolchain=... 重建 clang 并重新安装它

【讨论】:

  • 我是否使用 --with-gcc-toolchain= 指向包含目录?我认为这也适用于 cmake 构建。
  • 不,指向 gcc 的安装目录,所以可能是包含目录上方的目录。该选项用于配置,而不是制作。
  • 它仍然出错,你能举一个确切的例子吗?我已经尝试过我在 gcc 中使用的前缀,以及实际的构建目录
  • “错误输出”非常模糊。什么失败,配置步骤?制作步骤?安装步骤?如果你不能更具体,不要指望有太多帮助。我想我用../llvm/configure --prefix=/opt/llvm --with-gcc-toolchain=/opt/gcc 安装了 GCC 和--prefix=/opt/gcc
  • 刚刚检查了构建,我还使用了--with-extra-ld-options=-W l,-R,/opt/gcc/lib64 CXX=/opt/gcc/bin/g++ CC=/opt/gcc/bin/gcc CPP=/opt/gcc/bin/cpp 来确保 clang 是使用相同版本的 gcc(而不是另一个 gcc 或旧版本的 clang)构建的,并且 clang 二进制文件可以找到运行时正确的 gcc 共享库。一般情况下可能不需要这些选项。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-14
  • 1970-01-01
  • 2020-05-10
  • 1970-01-01
  • 2017-01-20
相关资源
最近更新 更多