开发环境搭建未名

手把手教你在Ubuntu下安装clang和libc++

2017-03-18  本文已影响9136人  算法时空

本文主要针对需要在Ubuntu下用clanglibc++标准库学习C++的同学. 操作系统是Ubuntu 16.10的64位版.

选择版本

之前推荐的是当前版本trunk,但是有时它在不断更新,所以最好还是选择特定版本,这里我们选择clang 5.0最终版,那么官网指南中可将trunk改成tags/RELEASE_500/final
例如:
http://llvm.org/svn/llvm-project/llvm/trunk
可以改成:
http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_500/final

步骤

sudo apt install subversion
sudo apt install cmake
cd ~
sudo mkdir CL
cd CL
svn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_500/final llvm
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_500/final clang
cd ../..
cd llvm/tools/clang/tools
svn co http://llvm.org/svn/llvm-project/clang-tools-extra/tags/RELEASE_500/final extra
cd ../../../..
cd llvm/projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/tags/RELEASE_500/final compiler-rt
cd ../..
cd llvm/projects
svn co http://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_500/final libcxx
svn co http://llvm.org/svn/llvm-project/libcxxabi/tags/RELEASE_500/final libcxxabi
cd ../..
mkdir build
cd build

注意将默认的Debug模式换成Release模式.

cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ../llvm
make
sudo make install
clang++ --help
clang++ -std=c++11 -stdlib=libc++ x.cpp
.\a.out
clang x.cpp -fsyntax-only
clang x.cpp -S -emit-llvm -o -
clang x.cpp -S -emit-llvm -o - -O3
clang x.cpp -S -O3 -o -

折腾

安装完毕之后, 如果不嫌麻烦的话, 可以用clang再编译安装一次:

CC=clang CXX=clang++ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ../llvm

后续步骤同上:-)

主要参考文献

http://clang.llvm.org/get_started.html
http://libcxx.llvm.org/docs/BuildingLibcxx.html
http://libcxx.llvm.org/docs/UsingLibcxx.html
http://llvm.org/docs/GettingStarted.html
http://llvm.org/docs/CMake.html

算法时空
上一篇下一篇

猜你喜欢

热点阅读