CMAKE_LINKER_TYPE¶
新增於 3.29 版本。
指定連結步驟將使用的連結器。
此變數用於初始化呼叫 LINKER_TYPE
屬性於每個透過 add_library()
或 add_executable()
建立的目標。它僅對具有連結步驟的目標有意義。如果設定,它的值也會被 try_compile()
命令使用。
注意
假設指定的連結器與編譯器通常會調用的預設連結器完全相容。CMake 不會進行任何選項轉換。
連結器類型區分大小寫,並且只能包含字母、數字和底線。所有大寫字母定義的連結器類型都保留給 CMake 自己的內建類型。預先定義的連結器類型有
DEFAULT
此類型對應於標準連結,本質上等同於
LINKER_TYPE
目標屬性完全未設定。SYSTEM
使用平台或工具鏈提供的標準連結器。例如,這表示所有與 MSVC 相容的編譯器都使用 Microsoft 連結器。以下平台-編譯器組合支援此類型
Linux:
GNU
、Clang
、LLVMFlang
、NVIDIA
和Swift
編譯器。Apple 平台:
AppleClang
、Clang
、GNU
和Swift
編譯器。Windows:
MSVC
、GNU
、Clang
、NVIDIA
和Swift
編譯器。
LLD
使用
LLVM
連結器。以下平台-編譯器組合支援此類型Linux:
GNU
、Clang
、LLVMFlang
、NVIDIA
和Swift
編譯器。Apple 平台:
Clang
、AppleClang
和Swift
編譯器。Windows:
GNU
、具有 MSVC 類似前端的Clang
、具有 GNU 類似前端的Clang
、MSVC
、具有 MSVC 類似前端的NVIDIA
和Swift
。
BFD
使用
GNU
連結器。以下平台-編譯器組合支援此類型Linux:
GNU
、Clang
、LLVMFlang
和NVIDIA
編譯器。Windows:
GNU
、具有 GNU 類似前端的Clang
。
GOLD
在 Linux 平台上支援
GNU
、Clang
、LLVMFlang
、NVIDIA
和Swift
編譯器。MOLD
使用 mold 連結器。以下平台-編譯器組合支援此類型
Linux:
GNU
、Clang
、LLVMFlang
和NVIDIA
編譯器。Apple 平台:
Clang
和AppleClang
編譯器(作為 sold 連結器的別名)。
SOLD
使用 sold 連結器。此類型僅在 Apple 平台上使用
Clang
和AppleClang
編譯器時支援。APPLE_CLASSIC
使用 Apple 連結器的經典行為(即
Xcode 15.0
之前)。此類型僅在 Apple 平台上使用GNU
、Clang
、AppleClang
和Swift
編譯器時支援。MSVC
使用 Microsoft 連結器。此類型僅在 Windows 平台上使用
MSVC
、具有 MSVC 類似前端的Clang
和Swift
編譯器時支援。