Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Paketlistendatei erstellen
Die Manifestdatei (aufgerufen vcpkg.json
) ist eine JSON-Datei, die die Metadaten des Pakets beschreibt.
Für libogg erstellen wir die Datei ports/libogg/vcpkg.json
mit dem folgenden Inhalt:
{
"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/"
}
Sie können die Manifestdatei mit unseren Spezifikationen formatieren.vcpkg format-manifest ports/libogg/vcpkg.json
Erstellen der Portdatei
portfile.cmake
beschreibt, wie das Paket erstellt und installiert wird. Zuerst laden wir das Projekt von Github mit vcpkg_from_github
:
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO xiph/ogg
REF v1.3.3
SHA512 0bd6095d647530d4cb1f509eb5e99965a25cc3dd9b8125b93abd6b248255c890cf20710154bdec40568478eb5c4cde724abfb2eff1f3a04e63acef0fbbc9799b
HEAD_REF master
)
Die wichtigen Komponenten zum Aktualisieren sind REPO
für den GitHub-Repositorypfad, REF
für ein stabiles Tag/Commit für die Verwendung und SHA512
mit der Prüfsumme der heruntergeladenen Datei (Sie können dies ganz einfach abrufen, indem Sie es 0
festlegen, versuchen, das Paket zu installieren und die Prüfsumme zu kopieren).
Schließlich konfigurieren wir das Projekt mit CMake, installieren das Paket und kopieren über die Lizenzdatei:
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH})
vcpkg_cmake_install()
vcpkg_install_copyright("${SOURCE_PATH}/COPYING")
Überprüfen Sie die Dokumentation, und vcpkg_cmake_configure
vcpkg_cmake_install
wenn Ihr Paket zusätzliche Optionen benötigt.
Jetzt können Sie ausführen vcpkg install libogg
, um das Paket zu erstellen und zu installieren.
Vorgeschlagene Beispielportdateien
ports/
Im Verzeichnis gibt es viele Bibliotheken, die als Beispiele verwendet werden können, einschließlich vieler Bibliotheken, die nicht auf CMake basieren.
- Nur Headerbibliotheken
- Rapidjson
- range-v3
- MSBuild-basiert
- chacore
- Non-CMake, benutzerdefiniertes Buildsystem
- openssl
- FFMPEG