llvm-config命令详解(LLVM配置信息)

概要

llvm-config option [components…]

描述

llvm-config让使用LLVM构建的应用程序变得更容易。它可以打印链接LLVM所需的编译器标志,链接器标志和对象库。

例子

链接JIT:

g++ `llvm-config --cxxflags` -o HowToUseJIT.o -c HowToUseJIT.cpp
g++ `llvm-config --ldflags` -o HowToUseJIT HowToUseJIT.o \
`llvm-config --libs engine bcreader scalaropts`

选项

选项 说明
-version 输出LLVM的版本号
-help 输出帮助信息
-prefix 输出LLVM的安装前缀(installation prefix)
-src-root 输出LLVM构建时的源代码根目录
-obj-root 输出LLVM构建时的目标文件根目录
-bindir 输出LLVM二进制文件的安装目录
-includedir 输出LLVM头文件的安装目录
-libdir 输出LLVM库文件的安装目录
-cxxflags 输出使用LLVM头文件所需要的C++编译选项
-ldflags 输出链接LLVM库文件所需要的链接标志
-libs 打印链接指定LLVM 组件所需的所有库 ,包括任何依赖项。
-libnames -libs类似,但打印没有-l或路径名的库的裸文件名。用于链接尚未安装的LLVM副本。
-libfiles 与-libs类似,但打印每个库文件的完整路径。这在创建makefile依赖项时很有用,以确保在它使用的任何库发生更改时重新链接工具。
-components 打印所有有效的组件名称
-target-built 打印此LLVM副本支持的所有目标的组件名称
-build-mode 打印构建LLVM时使用的构建模式(例如,调试或发布)

组件

要打印所有可用组件的列表,请运行llvm-config -components。在大多数情况下,组件直接对应于LLVM库。有用的“虚拟”组件包括:

  • all :包括所有LLVM库。如果未指定任何组件,则为默认值。
  • backend :包括本机后端或C后端
  • engine :包括本机JIT或bitcode解释器

退出

如果llvm-config执行成功,退出码是0,反之,如果执行不成功,将返回非0值。