llvm每日谈之三 如何建立一个LLVM工程

做者:snsn1984 html

阅读了文档《Creating an LLVM Project》(地址:http://llvm.org/docs/Projects.html)以后,本身照着作了一遍,记录一下本身的过程。 ui

实际作的时候跟文档上仍是有不一样的。 .net

1.首先我系统上的llvm3.1是以前已经下好,而且make过的。我打开llvm-3.1/projects目录,看到下面有一个我以前放的compiler-rt目录和另一个原本这里就有的sample。把sample这个文件夹copy到llvm3.1的同级目录。修改文件夹名字为MyFirstLLVM。 htm

2. 打开MyFirstLLVM/autoconf目录,打开configure.ac. blog

3. AC_INIT后面的括号里面有三个中括号,第一个中括号要填的是这个项目的名字,第二个是这个项目的版本号,第三个是做者的联系邮箱,可改可不改。 文档

4. 由于如今MyFirstLLVM已经和llvm-3.1在同级目录了,因此修改接下来的LLVM_SRC_ROOT="../../llvm-3.1" LLVM_OBJ_ROOT="../../llvm-3.1/build"。llvm-3.1/build目录是我编译llvm-3.1的目录。 terminal

5. 修改AC_CONFIG_AUX_DIR后面的内容为:(["../../llvm-3.1/autoconf"])。 get

6. 而后保存,在terminal中运行./AutoRegen.sh。这时候系统提示:Your autoconf was not detected as being 2.5x or 2.6x。 编译

7. 查了下,是机器上没装autoconf的缘故,使用sudo apt-get install autoconf安装以后,就能够正常运行了。 项目

8. 而后在MyFirstLLVM目录之下,创建一个build目录,在build目录下运行../configure。

9. 在build目录下运行make,结束以后能够看到build目录下有一个Release+Asserts目录,打开这个目录,能够看到lib和bin两个目录。

10. 在bin目录之下运行./Sample获得一个输出的结果5。

这样就已经完成了一个LLVM工程的创建。这是创建LLVM工程的两种方式之一,另一种方式就是从零开始,本身一点一点创建,这样相对来讲会复杂点。


PS:

创建LLVM工程和编译LLVM是两回事,不要搞混了。

相关文章
相关标签/搜索