Debian8.1上的Apple Clang

时间:2016-06-21 13:34:24

标签: clang llvm-clang

最近我将Apple Clang-700.1.81移植到debian 8.1。我成功地与

建立了合作关系
cmake ../llvm -DLLVM_TARGET_TO_BUILD="X86" -DCMAKE_INSTALL_PREFIX="/usr" -DDLLVM_DEFAULT_TARGET_TRIPLE="x86_64-apple-darwin15.3.0"
Make clang -j8 -s 2>Logs

CC Complier:gcc-4.9 CXX编译器:g ++ - 4.9

使用默认目标x86_64-apple-darwin3.16.0-amd64

我有什么遗失的吗?

1 个答案:

答案 0 :(得分:1)

好的,我终于找到了解决方案。

确保安装所有这些插件。

gcc-4.9 g++-4.9-multilib gcc-4.9-multilib gobjc automake autoconf bison flex libtool python-dev libxml2-dev
  

在Unix系统上构建clang-700.0.81

可能有一些错误修复,这些都是我所做的。

  1. 删除源文件CFString.cpp或从目录中移出。

  2. 禁用SourceManager只是注释那些导致编译器错误的代码。

  3. "支架初始化"添加额外的花括号来修复它。

  4.   

    在Unix系统上构建clang-703.0.31

    clang-703.0.31不需要像clang-700.0.81那样的任何配置。

    使用此代码修补clang-703.0.31,以使预处理器能够转储正确版本的clang。

    src/tools/clang/lib/Basic/Version.cpp    
    @@ -112,6 +112,9 @@
               OS << LLVMRepo << ' ';
             OS << LLVMRev << ')';
           }
        +  OS << " (";
        +  OS << 'clang-703.0.31';
        +  OS << ')';
           return OS.str();
         }
    

    最后使用这些参数构建clang-700.0.81或clang-703.0.31

    cmake -G "Unix Makefiles" ../src -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DLLVM_INCLUDE_TESTS=False -DCOMPILER_RT_INCLUDE_TESTS=False -DLLVM_USE_SANITIZER=Address
    

    如果我错了,请修理我