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

列印如何集體連結提供的元件 (共用靜態)。

–system-libs

列印連結到指定的 LLVM 元件 所需的所有系統程式庫,包括任何相依性。

–targets-built

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

–version

印出 LLVM 的版本號。

組件

若要印出所有可用組件的清單,請執行 llvm-config –components。在大多數情況下,組件會直接對應到 LLVM 函式庫。有用的「虛擬」組件包括:

all

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

backend

包含原生後端或 C 語言後端。

engine

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

結束狀態

如果 llvm-config 成功執行,它會以 0 結束。否則,如果發生錯誤,它會以非零值結束。