Porty nakładki
Zazwyczaj porty vcpkg są uzyskiwane z rejestrów. Jest bardzo prawdopodobne, że większość zainstalowanych portów pochodzi z oficjalnego rejestru vcpkg pod adresem https://github.com/Microsoft/vcpkg. Narzędzie vcpkg umożliwia zainstalowanie dostępnych portów za pośrednictwem systemu plików, które nazywamy tymi portami, portami nakładki.
Port nakładki może działać jako wymiana upuszczania istniejącego portu lub jako nowego portu, który w przeciwnym razie nie jest dostępny w rejestrze. Podczas rozpoznawania nazw pakietów porty nakładki mają priorytet.
Porty nakładki są oceniane w następującej kolejności:
- Lokalizacje nakładki określone w wierszu polecenia za pomocą polecenia .
--overlay-ports
- Lokalizacje nakładki określone w
vcpkg-configuration.json
pliku za pomocą poleceniaoverlay-ports
. - Lokalizacje nakładki określone przez zmienną środowiskową
VCPKG_OVERLAY_PORTS
.
Podczas rozpoznawania nazw portów wybrano pierwszą lokalizację zawierającą pasujący port nakładki.
Korzystanie z portu nakładki
Katalog może reprezentować zestaw portów nakładki i można go określić na jeden z dwóch sposobów:
- Pojedynczy port nakładki:
<directory>/sqlite3
odwołuje się do pojedynczego portu - Katalog portów nakładki:
<directory>
odwołuje się do katalogu portów Prawidłowy port musi zawierać zarównovcpkg.json
iportfile.cmake
.
Port nakładki można dodać na kilka sposobów:
- Wiersz polecenia: dodaj jedną lub wiele
--overlay-ports=<directory>
opcji do polecenia vcpkg - Manifest: Wypełnij tablicę
"overlay-ports"
wvcpkg-configuration.json
- Zmienna środowiskowa: ustaw
VCPKG_OVERLAY_PORTS
na listę ścieżek katalogu
Przykład: przykład portów nakładki
Biorąc pod uwagę tę strukturę katalogów:
Katalog nakładki o nazwie team-ports zawiera porty sqlite3, rapidjson i curl. Katalog nakładki o nazwie my-ports zawiera porty sqlite3 i rapidjson. Katalog vcpkg zawiera rejestr domyślny.
Uruchom:
vcpkg install sqlite3 --overlay-ports=my-ports --overlay-ports=team-ports
W celu zainstalowania stabilizatorów:
sqlite3
zmy-ports
Uruchom:
vcpkg install sqlite3 rapidjson curl
--overlay-ports=my-ports/rapidjson
--overlay-ports=vcpkg/ports/curl
--overlay-ports=team-ports
W celu zainstalowania stabilizatorów:
sqlite3
zteam-ports
rapidjson
zmy-ports
curl
z "vcpkg/ports"
Przykład: używanie portów nakładki do używania zależności menedżera pakietów systemowych
Aby użyć zależności menedżera pakietów systemowych za pośrednictwem vcpkg jeden, zapoznaj się z naszym wpisem w blogu.