clang

1、安装 clang

  可以从官网下载,如果是CentOS 6 系统,也可以在 /etc/yum.repos.d/ 目录下增加一个 epel.repo 文件,内容如下:

[epel]

name=Extra Packages for Enterprise Linux 6 - $basearch

baseurl=http://mirrors.aliyun.com/epel/6/$basearch

        http://mirrors.aliyuncs.com/epel/6/$basearch

#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch

failovermethod=priority

enabled=1

gpgcheck=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6



[epel-debuginfo]

name=Extra Packages for Enterprise Linux 6 - $basearch - Debug

baseurl=http://mirrors.aliyun.com/epel/6/$basearch/debug

        http://mirrors.aliyuncs.com/epel/6/$basearch/debug

#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearch

failovermethod=priority

enabled=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

gpgcheck=0



[epel-source]

name=Extra Packages for Enterprise Linux 6 - $basearch - Source

baseurl=http://mirrors.aliyun.com/epel/6/SRPMS

        http://mirrors.aliyuncs.com/epel/6/SRPMS

#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-6&arch=$basearch

failovermethod=priority

enabled=0

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

gpgcheck=0

  然后执行 yum update ,再 yum install clang 就好了。

 

2、安装 libc++

  正如 gcc 编译 c++ 使用自己的实现的标准库一样,clang 也有自己实现的 c++ 库,称为 libc++,下载源代码进行编译:

svn co http://llvm.org/svn/llvm-project/libcxx/trunk libcxx

cd libcxx/lib

./buildit 

  把 lib 目录下生成的 libc++.so.1.0 拷贝到 /usr/lib,加上两个符号链接:

cp libc++.so.1.0 /usr/lib

cd /usr/lib

ln -sf libc++.so libc++.so.1.0

ln -sf libc++.so.1 libc++.so.1.0

  因为 clang 默认去 /usr/include/c++/v1 目录搜索 libc++,把 libcxx/include 这个目录下所有文件复制到 /usr/include/c++/v1 目录下:

cd libcxx

cp include /usr/include/c++/v1 -r

  这样在 /usr/include/c++/v1 就可以看到标准C++的头文件了。

 

3、编译 C++

clang++ --std=c++11 -stdlib=libc++ test.cpp

  上面的 -stdlib=libc++ 表示使用上面安装的 clang 专属 libc++,也可以不带此参数,使用 gcc 的库。

 

 

你可能感兴趣的:(lang)