封裝 GitHub 存放庫範例:libogg
建立指令清單檔案
指令清單檔 (稱為 vcpkg.json
) 是描述套件元數據的 json 檔案。
針對 libogg,我們將使用下列內容建立檔案 ports/libogg/vcpkg.json
:
{
"name": "libogg",
"version-string": "1.3.3",
"description": "Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs.",
"homepage": "https://www.xiph.org/ogg/"
}
您可以使用 將指令清單檔格式化為我們的規格 vcpkg format-manifest ports/libogg/vcpkg.json
。
建立 portfile
portfile.cmake
描述如何建置及安裝套件。 首先,我們會使用 從 Github vcpkg_from_github
下載專案:
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO xiph/ogg
REF v1.3.3
SHA512 0bd6095d647530d4cb1f509eb5e99965a25cc3dd9b8125b93abd6b248255c890cf20710154bdec40568478eb5c4cde724abfb2eff1f3a04e63acef0fbbc9799b
HEAD_REF master
)
要更新的重要部分是 REPO
GitHub 存放庫路徑、 REF
穩定標記/認可使用,以及 SHA512
下載的檔案總和檢查碼(您可以藉由將它 0
設定為 、嘗試安裝套件,以及複製總和檢查碼來輕鬆取得此專案)。
最後,我們會使用 CMake 設定專案、安裝套件,以及複製授權檔案:
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH})
vcpkg_cmake_install()
vcpkg_install_copyright("${SOURCE_PATH}/COPYING")
檢查的檔, vcpkg_cmake_configure
以及 vcpkg_cmake_install
您的套件是否需要其他選項。
現在您可以執行 vcpkg install libogg
來建置及安裝套件。
建議的範例 portfiles
目錄中 ports/
有許多連結庫可用來作為範例,包括許多不是以 CMake 為基礎的連結庫。
- 僅限標頭連結庫
- rapidjson
- range-v3
- MSBuild 型
- chakracore
- 非 CMake、自定義建置系統
- openssl
- ffmpeg