llvm-config - 列印 LLVM 編譯選項

概要

llvm-config 選項 [組件…]

描述

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`

選項

–assertion-mode

列印建置 LLVM 時使用的斷言模式 (ON 或 OFF)。

–bindir

列印 LLVM 二進制檔的安裝目錄。

–build-mode

列印建置 LLVM 時使用的建置模式 (例如 Debug 或 Release)。

–build-system

列印用於建置 LLVM 的建置系統 (例如 cmakegn)。

–cflags

列印使用 LLVM 標頭檔所需的 C 編譯器旗標。

–cmakedir

列印 LLVM CMake 模組的安裝目錄。

–components

列印所有有效的組件名稱。

–cppflags

列印使用 LLVM 標頭檔所需的 C 前處理器旗標。

–cxxflags

列印使用 LLVM 標頭檔所需的 C++ 編譯器旗標。

–has-rtti

列印建置 LLVM 時是否啟用 rtti (YES 或 NO)。

–help

列印 llvm-config 引數的摘要。

–host-target

列印用於配置 LLVM 的目標三元組。

–ignore-libllvm

忽略 libLLVM 並改為連結組件程式庫。

–includedir

列印 LLVM 標頭檔的安裝目錄。

–ldflags

列印連結 LLVM 程式庫所需的旗標。

–libdir

列印 LLVM 程式庫的安裝目錄。

–libfiles

–libs 類似,但列印每個程式庫檔案的完整路徑。這在建立 makefile 依賴項時很有用,以確保工具在它使用的任何程式庫變更時重新連結。

–libnames

–libs 類似,但列印程式庫的裸檔名,不包含 -l 或路徑名稱。適用於連結尚未安裝的 LLVM 副本。

–libs

列印連結指定的 LLVM 組件 所需的所有程式庫,包括任何依賴項。

–link-shared

將組件連結為共享程式庫。

–link-static

靜態連結組件程式庫。

–obj-root

列印用於建置 LLVM 的物件根目錄。

–prefix

列印 LLVM 的安裝前綴。

–shared-mode

列印提供的組件如何集體連結 (sharedstatic)。

–system-libs

列印連結指定的 LLVM 組件 所需的所有系統程式庫,包括任何依賴項。

–targets-built

列印此 LLVM 副本支援的所有目標的組件名稱。

–version

列印 LLVM 的版本號。

組件

若要列印所有可用組件的列表,請執行 llvm-config –components。在大多數情況下,組件直接對應於 LLVM 程式庫。有用的「虛擬」組件包括

all

包含所有 LLVM 程式庫。如果未指定組件,則為預設值。

backend

包含原生後端或 C 後端。

engine

包含原生 JIT 或位元碼直譯器。

退出狀態

如果 llvm-config 成功,它將以 0 退出。否則,如果發生錯誤,它將以非零值退出。