vcpkg_msbuild_install
建置並安裝 MSBuild 專案。
此函式會 vcpkg_install_msbuild
取代 。
vcpkg_msbuild_install
會產生包含 CMake 工具鏈建置旗標的 props 檔案和目標檔案,並透過 /p:ForceImportAfterCpp(Props|Targets)
使用方式
vcpkg_install_msbuild(
SOURCE_PATH <${SOURCE_PATH}>
PROJECT_SUBPATH <port.sln>
[ADD_BIN_TO_PATH]
[NO_INSTALL]
[NO_TOOLCHAIN_PROPS]
[CLEAN]
[RELEASE_CONFIGURATION <Release>]
[DEBUG_CONFIGURATION <Debug>]
[TARGET <Build>]
[PLATFORM <Win32>]
[OPTIONS </p:ZLIB_INCLUDE_PATH=X>...]
[OPTIONS_RELEASE </p:ZLIB_LIB=X>...]
[OPTIONS_DEBUG </p:ZLIB_LIB=X>...]
[DEPENDENT_PKGCONFIG <zlib>]
[ADDITIONAL_LIBS <getopt.lib>]
[ADDITIONAL_LIBS_DEBUG <zlibd.lib>]
[ADDITIONAL_LIBS_RELEASE <zlib.lib>]
)
若要使用此函式,您必須相依於協助程式埠 vcpkg-msbuild
:
"dependencies": [
{
"name", "vcpkg-msbuild",
"host": "true"
}
]
參數
SOURCE_PATH
來源樹狀結構根目錄的路徑。
因為 MSBuild 使用來源內組建,因此來源樹狀結構會複製到組建的暫存位置。 這個參數是該複本的基底,並構成所有XYZ_SUBPATH選項的基底。
PROJECT_SUBPATH
專案 () 或項目 (.sln
.vcxproj
) 檔案的子路徑相對於 SOURCE_PATH
。
ADD_BIN_TO_PATH
將組態相依的二進位路徑加入至建置前的 PATH
環境變數。
這是執行專案本身所建置的工具的必要專案。 如果 VCPKG_CROSSCOMPILING
為 ,PATH
則不會變動環境變數true
NO_TOOLCHAIN_PROPS
請勿透過 cmake 產生工具鏈屬性。 這會自動停用任何 vcpkg 整合。
NO_INSTALL
請勿自動嘗試安裝任何 .lib|。dll|。pdb|。exe 檔案位於組建 dir 中。
清潔
表示在安裝之後應該移除中繼檔案。
RELEASE_CONFIGURATION
用於發行組建的組態 (/p:Configuration
msbuild 參數)。 預設為: Release
DEBUG_CONFIGURATION
用於偵錯組建的組態 (/p:Configuration
msbuild 參數)。 預設為: Debug
TARGET
要建置的 MSBuild 目標 (/t:<TARGET>
)。 預設為: Rebuild
平台
用於組建的平臺 (/p:Platform
msbuild 參數)。
這會預設為建立 時 .vcxproj
Visual Studio 所使用之預設值的值對應VCPKG_TARGET_ARCHITECTURE
:
x86
成為Win32
x64
成為x64
arm
成為ARM
arm64
成為arm64
傳遞 .sln
而非 .vcxproj
時,可能需要設定回 , ${VCPKG_TARGET_ARCHITECTURE}
以符合解決方案所使用的平臺字串。
OPTIONS
傳遞至 MSBuild 的所有組建的其他選項。
OPTIONS_RELEASE
傳遞至發行組建 msbuild 的其他選項。 這些是 除了 OPTIONS
。
OPTIONS_DEBUG
傳遞至 msbuild 以進行偵錯組建的其他選項。 這些是 除了 OPTIONS
。
DEPENDENT_PKGCONFIG
要新增至組建的 pkg-config
相依性清單。 這會將所有必要的組建旗標(包括/定義/連結庫)新增至組建屬性。
ADDITIONAL_LIBS
要新增至專案的其他連結庫。
ADDITIONAL_LIBS_DEBUG
要新增至 msbuild 以用於發行組建的其他連結庫。 這些是 除了 ADDITIONAL_LIBS
。
ADDITIONAL_LIBS_RELEASE
要新增至 msbuild 以進行偵錯組建的其他連結庫。 這些是 除了 ADDITIONAL_LIBS
。
來源
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應