Linux环境下LLVM 6.0 + clang安装步骤

可以转载,请注明出处!

1.准备工作

首先确保你的Linux系统是可以联网的,我是win10环境下的VMware 15 + centos 7,这个应该没影响,之所以说,是因为我之前用的vm12,使用centos7老是出问题,换了15之后就好了。
在这里插入图片描述
安装总共需要三个tar包,将其全部拖入到Linux环境下。其中cfe-6.0.0.src.tar.xz是clang的源码,compiler-rt-6.0.0.src.tar.xz是动态测试工具,llvm-6.0.0.src.tar是llvm的源码,这三个包官网都有,如果不想找的话,从我下面这个盘里面下载也是OK的。

下载链接:https://pan.baidu.com/s/1pGTDJd7rGxD5vIxChNPP3Q
提取码:cbm1

1.1解压llvm-6.0.0.src.tar

在root权限的根目录下,创建一个名为llvmtest目录:
在这里插入图片描述
将llvm-6.0.0.src.tar移到llvmtest目录下,使用tar -xvf llvm-6.0.0.src.tar命令解压文件到当前目录,并将解压好的文件重命名为llvm:
在这里插入图片描述

1.2解压cfe-6.0.0.src.tar.xz

步骤1.1中被解压出来命名为llvm的文件下有一个tools目录,将cfe-6.0.0.src.tar.xz移到其中,使用tar -xvf cfe-6.0.0.src.tar.xz解压,并将解压后的文件重命名为clang:
在这里插入图片描述
在这里插入图片描述

1.3解压compiler-rt-6.0.0.src.tar.xz

步骤1.1中被解压出来命名为llvm的文件下有一个projects目录,将compiler-rt-6.0.0.src.tar.xz移动到其中,使用tar -xvf compiler-rt-6.0.0.src.tar.xz命令解压,并重命名为compiler-rt:
在这里插入图片描述

1.4编译安装

首先确保你的Linux中有安装cmake。输入cmake -version指令,查看你本机cmake的版本号,如果未出现版本号,直接跳到步骤3完成cmake的安装,然后再进行后续工作。我本机cmake安装的是3.15.1版本,已验证是可行的,如果你的当前cmake比这个版本低,建议安装3.15.1或者更高版本。
在这里插入图片描述

在步骤1.1中被解压出来命名为llvm的文件下新建一个名为llvm-build的目录,然后cd到该目录下,输入下面指令对llvm源码进行编译:

cmake -G "Unix Makefiles" -DLLVM_ENABLE_ASSERTIONS=On -DCMAKE_BUILD_TYPE=Release ../

编译完成后输入make install指令进行安装,这个过程比较久,可能要两三个小时;

至此环境已经搭建完成!

1.5环境检测

分别输入下面两条指令,如果出现图片中对应的信息,说明环境已安装成功:
llvm-config --version
clang --version
在这里插入图片描述

1.6用例测试

用C编写一个打印“hello word”的程序,程序名为hello.c,用clang进行编译。

hello.c内容:
在这里插入图片描述

clang hello.cclang hello.c -o hello.outclang -emit-llvm -c hello.c -o hello.bc指令编译,第一条编译完后会生成一个默认名为a.out的可执行文件,第二条会生成一个hello.out 可执行文件,第三条不会生成可执行文件,只将编译完的二进制文件存放在了hello.bc文件中:
在这里插入图片描述

使用上面第一条指令编译完成后会生成一个a.out的可执行文件,使用 ./a.out指令执行:
在这里插入图片描述

使用llvm-dis hello.bc –o hello.ll将hello.bc二进制文件转为llvm IR中间码:
在这里插入图片描述

2.gcc/g++安装

g++和gcc的安装可参考下面两个链接,先用第一链接中的安装方式,如果不可行,再用第二个链接中的方式。
https://blog.csdn.net/Betty2017/article/details/80953282
https://www.cnblogs.com/wanglijun/p/8605709.html

3.cmake安装

安装cmake要确保你本地Linux有安装gcc/g++。分别输入gcc --versiong++ --version指令,查看你本机gcc/g++的版本号,如果未出现版本号,直接跳到步骤2完成gcc/g++的安装。我本地安装的是4.8.5版本,已验证其是可行的,如果你的当前gcc/g++比这个版本低,建议安装4.8.5或者更高版本。
在这里插入图片描述
先在Linux环境下使用下面命令下载tar包:wget https://cmake.org/files/v3.15/cmake-3.15.1.tar.gz

然后参考下面链接完成安装即可:
https://www.cnblogs.com/cxscode/p/10980101.html

  • 11
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yelvens

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值