Przykład tworzenia pakietów repozytoriów GitHub: libogg
Tworzenie pliku manifestu
Plik manifestu (o nazwie vcpkg.json
) to plik json opisujący metadane pakietu.
W przypadku biblioteki libogg utworzymy plik ports/libogg/vcpkg.json
z następującą zawartością:
{
"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."
}
Plik manifestu można sformatować do naszych specyfikacji za pomocą polecenia vcpkg format-manifest ports/libogg/vcpkg.json
.
Tworzenie pliku portów
portfile.cmake
Opisuje sposób kompilowania i instalowania pakietu. Najpierw pobierzemy projekt z usługi GitHub za pomocą polecenia vcpkg_from_github
:
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO xiph/ogg
REF v1.3.3
SHA512 0bd6095d647530d4cb1f509eb5e99965a25cc3dd9b8125b93abd6b248255c890cf20710154bdec40568478eb5c4cde724abfb2eff1f3a04e63acef0fbbc9799b
HEAD_REF master
)
Ważne elementy do aktualizacji dotyczą REPO
ścieżki repozytorium GitHub, REF
stabilnego tagu/zatwierdzenia do użycia oraz SHA512
sumy kontrolnej pobranego pliku (można to łatwo uzyskać, ustawiając go na 0
, próbując zainstalować pakiet i kopiując sumę kontrolną).
Na koniec skonfigurujemy projekt za pomocą narzędzia CMake, zainstalujemy pakiet i skopiujemy plik licencji:
vcpkg_cmake_configure(SOURCE_PATH ${SOURCE_PATH})
vcpkg_cmake_install()
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/libogg" RENAME copyright)
Zapoznaj się z dokumentacją vcpkg_cmake_configure
i vcpkg_cmake_install
jeśli pakiet wymaga dodatkowych opcji.
Teraz możesz uruchomić polecenie vcpkg install libogg
, aby skompilować i zainstalować pakiet.
Sugerowane przykładowe pliki portów
W katalogu jest wiele bibliotek, które mogą być używane jako przykłady, w tym wiele, które nie są oparte na narzędziu ports/
CMake.
- Biblioteki tylko nagłówków
- rapidjson
- range-v3
- Oparty na programie MSBuild
- chakracore
- Nienależący do narzędzia CMake, niestandardowy system kompilacji
- openssl
- ffmpeg
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla