http://www.csdn.net/article/2013-11-27/2817632 的对Stanley B.Lippman采访提到clang的一些优点,以前程序员杂志也写过,为了提高系统的性能决定试试。

clang的优点有很多的资料介绍,经过试用简要总结几点

1 速度开

2 C++11支持好

3 编译严格,出错信息比gcc明确

...

C++11
http://product.china-pub.com/3801275 深入理解C++11:C++11新特性解析与应用
https://www.ibm.com/developerworks/community/forums/html/forum?id=5ac1dd9a-5a96-48e1-9eeb-7fe78636e1af&ps=10 勘误和代码

基础知识和扫盲参考
http://blog.csdn.net/snsn1984/article/category/1249418

http://llvm.org/releases/3.3/clang+llvm-3.3-amd64-Ubuntu-10.04.4.tar.gz
http://llvm.org/releases/3.3/libcxx-3.3.src.tar.gz
以上的安装包clang对应C++11的libcxx库,包含了头文件,但lib不包含,需要从libcxx-3.3.src.tar.gz编译出来
实验一个简单的程序
http://www.ibm.com/developerworks/cn/opensource/os-cn-clang/
大同小异,clang3.3版本把编译和连接程序统一成一个了
http://clang.llvm.org/cxx_status.html C++的支持情况

概念和使用参考资料

http://www.cnblogs.com/qoakzmxncb/archive/2013/04/18/3029105.html

GCC,LLVM,Clang编译器对比

http://cpprocks.com/c11-compiler-support-shootout-visual-studio-gcc-clang-intel/

C++编译器比较

http://blog.k-res.net/archives/1322.html

在Eclipse CDT项目中使用llvm-clang作为编译器并解决gdb调试不显示变量的问题

http://blog.csdn.net/snsn1984/article/category/1249418

附录【配置安装脚本】

#!/bin/bash

#验证机器环境

#target=x86_64-linux-gnu

#Thread model: posix

#gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1)

###

pushd pkg

#1 clang 3.3

mkdir /usr/local/clang3.3

tar -xzvf clang+llvm-3.3-amd64-Ubuntu-10.04.4.tar.gz  -C  /usr/local/

echo 'export PATH=/usr/local/clang+llvm-3.3-amd64-Ubuntu-10.04.4/bin:$PATH'>>/etc/profile

export PATH=/usr/local/clang+llvm-3.3-amd64-Ubuntu-10.04.4/bin:$PATH

tar -xzvf libcxx-3.3.src.tar.gz -C .

#libc++的库

pushd libcxx-3.3.src/lib

./buildit

if [ $? -ne 0 ];

then

echo -e "\e[1;41m $1 copile c11 library fail! \e[0m"

exit 1

fi

popd

#编译开发环境 C++11库 头文件

#  /usr/local/clang+llvm-3.3-amd64-Ubuntu-10.04.4/lib/c++/v1

#使编译可见

cp -f libcxx-3.3.src/lib/libc++.so.1.0 /usr/lib/libc++.so.1.0

ln -s /usr/lib/libc++.so.1.0 /usr/lib/libc++.so.1

ln -s /usr/lib/libc++.so.1.0 /usr/lib/libc++.so

rm -r -f libcxx-3.3.src

#使clang可见

source /etc/profile

#

popd

具体配置详细参考

http://pan.baidu.com/s/1nGab5

后续再把实验的c++的库编译等情况继续总结。

clang LLVM 介绍和安装(Ubuntu10 64位)的更多相关文章

  1. clang编译mysql(Ubuntu10 64位)

    编译安装mysql(Ubuntu10 64位) http://www.cnblogs.com/2018/p/3482259.html 这个介绍了gcc形式编译安装mysql 那我们使用clang进行编 ...

  2. VMware虚拟机下如何安装一个64位的win7系统

    原文地址:http://www.xitongcheng.com/jiaocheng/win7_article_21001.html VMware虚拟机软件可以在一台电脑上运行多个操作系统,一些网友想在 ...

  3. Centos6.5 安装 Oracle11gR2(64位)

    Centos6.5安装 Oracle11gR2(64位) 安装centos6.5 (我的是虚拟机环境) 1.  下载centos6.5的安装包,不解释. 例如以下图: 2.  下载oracle安装包, ...

  4. ThinkPad X260 UEFI安装 win7 64位 方法

    ThinkPad X260   UEFI安装 win7 64位 方法 1.使用DG重新格式化硬盘,格式为GPT 2.使用CGI  安装 WIM文件 (image不知是否可以,下次测试) 3.改BIOS ...

  5. H310C,B365,M.2 NVME SSD,USB3.0,安装 WIN7 64 位

    华擎H310CM ITX NVME SSD 上安装WIN7 64位 核心关键点:xHCI USB3.0驱动,nvme驱动,nvme win7补丁. 硬件配置:I5 9400F, 华擎H310CM IT ...

  6. linux下安装oracle11g 64位最简客户端(转)

    安装环境 Linux服务器:SuSe11 sp1 64位           Oracle客户端:Oracle11gR2 64位(最简客户端) 部署流程 1.准备工作,首先在oracle官网下载最新的 ...

  7. hadoop-1.2.1-1.x86_64.rpm、jdk-7u45-linux-x64.tar.gz安装(64位)

    一,   配置信息 机器是64位,所以操作系统.软件都是64位的. 操作系统:CentOS6.2(64位): Hadoop是hadoop-1.2.1-1.x86_64.rpm: JDK是jdk-7u4 ...

  8. win7下matplotlib安装(64位)

    前段时间爬了一些数据,想着以后要将数据的分析结果什么的展示出来,就想着下个MATLAB,某天在微信上的一篇文章发现matplotlib库,是用于Python的一个不错的图形化库,就想着装上耍耍.不过安 ...

  9. Oracle安装:64位电脑安装64位Oracle、PLSQL步骤

    步骤: 1.安装64位Oracle 2.安装64位PLSql 3.将11.2.0.win32的压缩包解压,放在Oracle的安装目录:product下 4.配置PLSQL参数: Tools -> ...

随机推荐

  1. Admin Panel – 非常漂亮的后台管理系统模板

    网站或者应用系统的管理后台的设计虽然不像前台界面那样要求设计精美,但是也需要有清晰的管理模块划分,下面分享的这个后台管理模板的设计非常漂亮,特别是导航部分,头部还有未读的短消息和提醒的条数显示.赶紧下 ...

  2. iOS_UIImage_jpg<-->png转换

    // png 图片转化是无损的. 可以有透明效果. // jpg 图片转化是有损的. 质量因子. - (void)jpgToPng { UIImage * image = [UIImage image ...

  3. 使用git提交中删除idea

    https://segmentfault.com/q/1010000000720031 http://www.tuicool.com/articles/a6Nf63F 先有项目,然后分享至github ...

  4. 【Swift学习】Swift编程之旅---ARC(二十)

    Swift使用自动引用计数(ARC)来跟踪并管理应用使用的内存.大部分情况下,这意味着在Swift语言中,内存管理"仍然工作",不需要自己去考虑内存管理的事情.当实例不再被使用时, ...

  5. VS2015 新Web项目(C#6)出现CS1617错误的解决

    VS2015新增了对C#6的支持. 在新的Web项目模板中通过引入nuget包Microsoft.CodeDom.Providers.DotNetCompilerPlatform:1.0.0并在web ...

  6. JAVA - Collections用法总结

    一生二,二生三,三生万物,基础永远是一个计算机人的立身之本.数据结构这门课程的分析奠定了工程师对各种平台中的容器类,集合类的理解基础,正如好多人所说的,如果你对某个平台的集合类理解的不透彻,很可能,你 ...

  7. win10 服务(系统默认服务)注册表

    ---恢复内容开始--- Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services] ...

  8. .Net语言 APP开发平台——Smobiler学习日志:用Gridview控件设计较复杂的表单

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Smobil ...

  9. var 的使用

    List<Enterprise> epList = ViewBag.epList; foreach (var item in epList){ //todo ... } 当 List< ...

  10. .NET Framework介绍

    .NET Framework 是一个集成在 Windows 中的组件,它支持生成和运行下一代应用程序与 XML Web Services. .NET Framework 旨在实现下列目标: 提供一个一 ...