打包 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."
}
可以使用 vcpkg format-manifest ports/libogg/vcpkg.json
将清单文件格式设置为符合我们的规范。
创建端口文件
portfile.cmake
介绍如何构建和安装包。 首先,我们使用 vcpkg_from_github
从 Github 下载项目:
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO xiph/ogg
REF v1.3.3
SHA512 0bd6095d647530d4cb1f509eb5e99965a25cc3dd9b8125b93abd6b248255c890cf20710154bdec40568478eb5c4cde724abfb2eff1f3a04e63acef0fbbc9799b
HEAD_REF master
)
更新的重要部分包括:表示 GitHub 存储库路径的 REPO
,表示要使用的稳定标记/提交的 REF
,以及含有下载文件校验和的 SHA512
(通过将其设置为 0
,尝试安装包和复制校验和,你可以轻松获取此项)。
最后,我们使用 CMake 配置项目,安装包,然后复制许可的文件:
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH})
vcpkg_cmake_install()
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/libogg" RENAME copyright)
如果包需要其他选项,请查看 vcpkg_cmake_configure
和 vcpkg_cmake_install
的文档。
现在,可以运行 vcpkg install libogg
来构建并安装包。
建议的示例端口文件
ports/
目录中有许多可用作示例的库,包括许多不基于 CMake 的库。
- 仅标头库
- rapidjson
- range-v3
- 基于 MSBuild
- chakracore
- 非 CMake,自定义构建系统
- openssl
- ffmpeg
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈