Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Konfiguracja buforowania binarnego

Składnia konfiguracji

Buforowanie binarne jest konfigurowane przy użyciu zmiennej środowiskowej VCPKG_BINARY_SOURCES (ustawionej na <source>;<source>;...) i opcji --binarysource=<source>wiersza polecenia . Opcje są oceniane najpierw ze środowiska, a następnie z wiersza polecenia. Buforowanie binarne można całkowicie wyłączyć, przekazując --binarysource=clear jako ostatnią opcję wiersza polecenia.

Formularz opis
clear Wyłącz wszystkie poprzednie źródła (w tym domyślne)
default[,<rw>] Dodaje domyślnego dostawcę plików
files,<absolute path>[,<rw>] Dodaje lokalizację opartą na plikach
nuget,<uri>[,<rw>] Dodaje źródło oparte na nuGet; -Source odpowiednik parametru interfejsu wiersza polecenia NuGet
nugetconfig,<path>[,<rw>] Dodaje źródło oparte na plikach NuGet; -Config odpowiednik parametru interfejsu wiersza polecenia Narzędzia NuGet.
nugettimeout,<seconds> Określa limit czasu dla operacji sieciOwych NuGet; -Timeout odpowiednik parametru interfejsu wiersza polecenia Narzędzia NuGet.
http,<url_template>[,<rw>[,<header>]] Dodaje niestandardową lokalizację opartą na protokole HTTP.
x-azblob,<baseuri>,<sas>[,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Dodaje źródło usługi Azure Blob Storage przy użyciu sygnatury dostępu współdzielonego
x-gcs,<prefix>[,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Dodaje źródło usługi Google Cloud Storage (GCS).
x-aws,<prefix>[,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Dodaje źródło usługi AWS S3.
x-aws-config,<parameter> Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Skonfiguruj wszystkich dostawców usług AWS S3.
x-cos,<prefix>[,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Dodaje źródło magazynu obiektów w chmurze Tencent.
x-gha,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Użyj pamięci podręcznej funkcji GitHub Actions jako źródła.
x-az-universal,<organization>,<project>,<feed>[,<rw>] Eksperymentalne: spowoduje zmianę lub usunięcie bez ostrzeżenia
Użyj pakietów uniwersalnych w usłudze Azure Artifacts jako źródła.
interactive Umożliwia interaktywne zarządzanie poświadczeniami dla narzędzia NuGet (na potrzeby debugowania; wymagane --debug w wierszu polecenia)

<rw> Opcjonalny parametr dla niektórych źródeł określa, czy będą one konsultowane w celu pobierania plików binarnych (read)(ustawienie domyślne), czy kompilacje na żądanie zostaną przekazane do tego zdalnego () lub obu (readwritewrite).

Dostawcy usługi

Dostawca usług AWS S3

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-aws,<prefix>[,<rw>]

Dodaj źródło usługi AWS S3 przy użyciu interfejsu wiersza polecenia platformy AWS. <prefiks> powinien zaczynać się od s3:// i kończyć elementem /.

x-aws-config,no-sign-request

Przekaż --no-sign-request do interfejsu wiersza polecenia platformy AWS.

Dostawca usługi Azure Blob Storage

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-azblob,<baseuri>,<sas>[,<rw>]

Dodaje dostawcę usługi Azure Blob Storage przy użyciu weryfikacji sygnatury dostępu współdzielonego. <baseuri> powinna zawierać ścieżkę kontenera.

Szybki start

Najpierw musisz utworzyć konto usługi Azure Storage oraz kontener. Aby uzyskać instrukcje, zobacz dokumentację szybkiego startu usługi Azure Storage.

Następnie należy utworzyć sygnaturę dostępu współdzielonego (SAS), którą można wykonać na koncie magazynu w obszarze Ustawienia -> Sygnatura dostępu współdzielonego. Ta sygnatura dostępu współdzielonego będzie potrzebna:

  • Dozwolone usługi: obiekt blob
  • Dozwolone typy zasobów: Obiekt
  • Dozwolone uprawnienia: odczyt (jeśli jest używany ) lub Odczyt, Utwórz (jeśli jest readużywany write lub readwrite)

Punkt końcowy obiektu blob oraz kontener musi zostać przekazany jako <baseuri> i wygenerowany sygnatura dostępu współdzielonego bez prefiksu ? musi zostać przekazany jako <sas>.

Przykład:

x-azblob,https://<storagename>.blob.core.windows.net/<containername>,sv=2019-12-12&ss=b&srt=o&sp=rcx&se=2020-12-31T06:20:36Z&st=2020-12-30T22:20:36Z&spr=https&sig=abcd,readwrite

Program vcpkg podejmie próbę uniknięcia ujawnienia sygnatury dostępu współdzielonego podczas normalnych operacji, jednak:

  1. Zostanie wydrukowany w całości, jeśli --debug zostanie przekazany
  2. Zostanie on przekazany jako parametr wiersza polecenia do podprocesów, takich jak curl.exe

Usługa Azure Blob Storage zawiera funkcję usuwania wpisów pamięci podręcznej, do których nie uzyskiwano dostępu w danej liczbie dni, których można użyć do automatycznego zarządzania rozmiarem pamięci podręcznej binarnej. Zobacz Zarządzanie cyklem życia danych w witrynie Microsoft Docs, aby uzyskać więcej informacji, lub poszukaj zarządzania danymi — zarządzanie cyklem> życia w witrynie Azure Portal dla konta magazynu.

Dostawca magazynu obiektów w chmurze Tencent

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-cos,<prefix>[,<rw>]

Dodaje źródło COS. <prefix> powinien zaczynać się od cos:// i kończyć ciągiem /.

Dostawca plików

files,<absolute path>[,<rw>]

Przechowuje skompresowane archiwa zip w ścieżce na podstawie identyfikatora buforowania binarnego.

Dostawca usługi Google Cloud Storage

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-gcs,<prefix>[,<rw>]

Dodaje dostawcę usługi Google Cloud Storage. <prefix> powinien zaczynać się od gs:// i kończyć ciągiem /.

Szybki start

Najpierw musisz utworzyć konto platformy Google Cloud Platform, a także zasobnik magazynu (GCS Quick Start).

W ramach tego przewodnika Szybki start skonfigurowano gsutil narzędzie wiersza polecenia do uwierzytelniania w usłudze Google Cloud. Narzędzie vcpkg będzie używać tego narzędzia wiersza polecenia, dlatego upewnij się, że znajduje się on w ścieżce wyszukiwania plików wykonywalnych.

Przykład 1 (użycie zasobnika bez wspólnego prefiksu dla obiektów):

x-gcs,gs://<bucket-name>/,readwrite

Przykład 2 (przy użyciu zasobnika i prefiksu dla obiektów):

x-gcs,gs://<bucket-name>/my-vcpkg-cache/maybe/with/many/slashes/,readwrite
x-gcs,gs://<bucket-name>/my-vcpkg-cache/maybe/with`,commas/too!/,readwrite

Przecinki (,) są prawidłowe jako część prefiksu obiektu w GCS. Pamiętaj, aby uniknąć ich w konfiguracji vcpkg, jak pokazano w poprzednim przykładzie. Usługa GCS nie ma folderów (niektóre narzędzia GCS symulują foldery). Nie jest konieczne utworzenie ani manipulowanie prefiksem używanym przez pamięć podręczną vcpkg.

Pamięć podręczna funkcji GitHub Actions

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-gha[,<rw>]

Dodaje pamięć podręczną funkcji GitHub Actions jako dostawcę. Ten binarny dostawca buforowania jest prawidłowy tylko w kontekście przepływu pracy funkcji GitHub Actions. Ten dostawca wymaga ustawienia zarówno zmiennych środowiskowych, jak ACTIONS_CACHE_URL i ACTIONS_RUNTIME_TOKEN . Prawidłowe ustawienie tych zmiennych środowiskowych zostało omówione w poniższej sekcji Szybki start.

Szybki start

Aby program vcpkg korzystał z pamięci podręcznej funkcji GitHub Actions, potrzebuje adresu URL pamięci podręcznej akcji i tokenu środowiska uruchomieniowego. W tym celu obie wartości powinny być eksportowane jako zmienne środowiskowe w kroku przepływu pracy podobne do następujących:

- uses: actions/github-script@v7
  with:
    script: |
      core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
      core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');

Określenie tych wartości jako zmiennych środowiskowych zamiast argumentów wiersza polecenia vcpkg jest zgodne z projektem, ponieważ dostawca buforowania binarnego funkcji GitHub Actions może być używany tylko z przepływu pracy funkcji GitHub Actions.

Po wyeksportowaniu zmiennych środowiskowych narzędzie vcpkg można uruchomić za pomocą dostawcy buforowania binarnego funkcji GitHub Actions w następujący sposób:

- name: Install dependencies via vcpkg
  run: vcpkg install zlib --binarysource="clear;x-gha,readwrite"

Pakiety uniwersalne w usłudze Azure Artifacts

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

x-az-universal,<organization>,<project>,<feed>[,<rw>]

Dodaje pakiety uniwersalne w usłudze Azure Artifacts jako dostawcę.

Szybki start

Najpierw należy utworzyć kanał informacyjny pakietów uniwersalnych. Aby uzyskać instrukcje, zobacz przewodnik Szybki start dotyczący pakietów uniwersalnych.

Następnie należy zainstalować i uwierzytelnić się w interfejsie wiersza polecenia platformy Azure. Aby uzyskać instrukcje, zobacz przewodnik uwierzytelniania w interfejsie wiersza polecenia platformy Azure. Narzędzie vcpkg będzie używać tego narzędzia wiersza polecenia, dlatego upewnij się, że znajduje się on w ścieżce wyszukiwania plików wykonywalnych.

Przykład:

x-az-universal,organization_url,project_name,feed_name,readwrite

project_name Podaj parametr , aby program vcpkg pobierał i publikował pakiety uniwersalne do źródła danych w zakresie projektu.

x-az-universal,organization_url,,feed_name,readwrite

Pozostaw pusty parametr, project_name aby pobrać i opublikować pakiety uniwersalne w kanale informacyjnym w zakresie organizacji.

Dostawca HTTP

http,<url_template>[,<rw>[,<header>]]

Każda operacja buforowania binarnego jest mapowana na czasownik HTTP:

  • Pobierać- GET
  • Przesyłać- PUT
  • Sprawdzanie istnienia — HEAD

Szablon URL

Szablon używa nawiasów klamrowych do rozszerzania zmiennych. Możesz użyć zmiennych "name", "version", "sha" i "triplet". Na przykład:

https://cache.example.com/{name}/{version}/{sha}

Ostrzeżenie

Ta wartość może pojawić się w wierszu polecenia wywołań procesów zewnętrznych, co może mieć wpływ na bezpieczeństwo w danym środowisku.

Uwierzytelnianie jest obsługiwane przez określenie nagłówka autoryzacji HTTP. Na przykład:

http,https://cache.example.com/{name}/{version}/{sha},readwrite,Authorization: Bearer BearerTokenValue

Dostawca NuGet

Dodaj serwer NuGet za pomocą parametru interfejsu -Source wiersza polecenia Narzędzia NuGet:

nuget,<uri>[,<rw>]

Użyj pliku konfiguracji NuGet z parametrem interfejsu -Config wiersza polecenia NuGet:

nugetconfig,<path>[,<rw>]

Skonfiguruj limit czasu dla źródeł NuGet:

nugettimeout,<seconds>

Pliki konfiguracji muszą zdefiniować element , defaultPushSource aby obsługiwać zapisywanie pakietów z powrotem do kanału informacyjnego.

Referencja

Wiele serwerów NuGet wymaga dodatkowych poświadczeń dostępu. Najbardziej elastycznym sposobem podawania poświadczeń jest użycie nugetconfig źródła z plikiem niestandardowym nuget.config . Aby uzyskać więcej informacji, zobacz Korzystanie z pakietów z uwierzytelnionych źródeł danych .

Jednak nadal istnieje możliwość uwierzytelniania na wielu serwerach przy użyciu wbudowanych dostawców poświadczeń NuGet lub przez dostosowanie domyślnego nuget.configśrodowiska . Domyślną konfigurację można rozszerzyć za pomocą wywołań klienta nuget, takich jak:

nuget sources add -Name MyRemote -Source https://... -Username $user -Password $pass

a następnie przekazano do narzędzia vcpkg za pośrednictwem polecenia nuget,MyRemote,readwrite. Możesz uzyskać ścieżkę do dokładnej kopii narzędzia NuGet używanego przez narzędzie vcpkg, uruchamiając polecenie vcpkg fetch nuget, które będzie zgłaszać coś takiego jak:

$ vcpkg fetch nuget
/vcpkg/downloads/tools/nuget-5.5.1-linux/nuget.exe

Użytkownicy systemu innego niż Windows będą musieli wywołać tę metodę za pośrednictwem protokołu mono za pośrednictwem polecenia mono /path/to/nuget.exe sources add ....

metadata.repository

Dostawcy nuget źródeł i nugetconfig przestrzegają pewnych zmiennych środowiskowych podczas generowania pakietów NuGet. Pole metadata.repository wszystkich pakietów zostanie wygenerowane jako:

    <repository type="git" url="${VCPKG_NUGET_REPOSITORY}"/>

lub

    <repository type="git"
                url="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}.git"
                branch="${GITHUB_REF}"
                commit="${GITHUB_SHA}"/>

jeśli odpowiednie zmienne środowiskowe są zdefiniowane i niepuste. Jest to specjalnie używane do kojarzenia pakietów w pakietach GitHub z projektem budynku i nie jest przeznaczone do skojarzenia z oryginalnymi źródłami pakietów.

Pamięć podręczna NuGet

Pamięć podręczna nuGet w całym użytkowniku nie jest domyślnie używana. Aby użyć go dla każdego źródła opartego na nuget, ustaw zmienną środowiskowąVCPKG_USE_NUGET_CACHE na true (bez uwzględniania wielkości liter) lub 1.

Przykłady dostawców

Jeśli wybrany system ciągłej integracji nie znajduje się na liście, możesz przesłać żądanie ściągnięcia, aby go dodać!

Pakiety GitHub

Aby używać narzędzia vcpkg z pakietami GitHub, zaleca się użycie dostawcy NuGet.

Uwaga

2020-09-21: Agenci hostowani w usłudze GitHub mają starszą, wstępnie zainstalowaną kopię narzędzia vcpkg na ścieżce, która nie obsługuje najnowszego buforowania binarnego. Oznacza to, że bezpośrednie wywołania do bootstrap-vcpkg lub vcpkg bez prefiksu ścieżki mogą wywoływać niezamierzone wystąpienie programu vcpkg. Jeśli chcesz użyć własnej kopii narzędzia vcpkg, wykonaj następujące dwa kroki, aby uniknąć problemów, jeśli chcesz użyć własnej kopii narzędzia vcpkg:

  1. Uruchom odpowiednik rm -rf "$VCPKG_INSTALLATION_ROOT" polecenia .shell: 'bash'
  2. Zawsze wywoływanie vcpkg i bootstrap-vcpkg z prefiksem ścieżki, takim jak ./vcpkg, vcpkg/vcpkg, .\bootstrap-vcpkg.batitp.
# actions.yaml
#
# In this example, vcpkg has been added as a submodule (`git submodule add https://github.com/Microsoft/vcpkg`).
env:
  VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite'

matrix:
  os: ['windows-2019', 'ubuntu-20.04']
  include:
    - os: 'windows-2019'
      triplet: 'x86-windows'
      mono: ''
    - os: 'ubuntu-20.04'
      triplet: 'x64-linux'
      # To run `nuget.exe` on non-Windows platforms, `mono` must be used.
      mono: 'mono'

steps:
  # This step assumes `vcpkg` has been bootstrapped (run `./vcpkg/bootstrap-vcpkg`)
  - name: 'Setup NuGet Credentials'
    shell: 'bash'
    # Replace <OWNER> with your organization name
    run: |
      ${{ matrix.mono }} `./vcpkg/vcpkg fetch nuget | tail -n 1` \
        sources add \
        -source "https://nuget.pkg.github.com/<OWNER>/index.json" \
        -storepasswordincleartext \
        -name "GitHub" \
        -username "<OWNER>" \
        -password "${{ secrets.GITHUB_TOKEN }}"
      ${{ matrix.mono }} `./vcpkg/vcpkg fetch nuget | tail -n 1` \
        setapikey "${{ secrets.GITHUB_TOKEN }}" \
        -source "https://nuget.pkg.github.com/<OWNER>/index.json"

  # Omit this step if you're using manifests
  - name: 'vcpkg package restore'
    shell: 'bash'
    run: >
      ./vcpkg/vcpkg install sqlite3 cpprestsdk --triplet ${{ matrix.triplet }}

Jeśli używasz manifestów, możesz pominąć vcpkg package restore krok: zostanie on uruchomiony automatycznie w ramach kompilacji.

Aby uzyskać więcej informacji, zobacz dokumentację NuGet pakietów GitHub.

Artefakty usługi Azure DevOps

Aby używać narzędzia vcpkg z usługą Azure DevOps Artifacts, zaleca się użycie dostawcy NuGet.

Najpierw upewnij się, że na koncie devOps włączono obsługę artefaktów. Administrator może włączyć tę funkcję za pomocą ustawień projektu —> ogólne> omówienie> artefakty usługi Azure DevOps Services.>

Następnie utwórz źródło danych dla projektu. Adres URL kanału informacyjnego będzie linkiem kończącym https:// się ciągiem /nuget/v3/index.json. Aby uzyskać więcej informacji, zobacz dokumentację usługi Azure DevOps Artifacts.

Używanie kanału informacyjnego z potoku

# azure-pipelines.yaml
variables:
- name: VCPKG_BINARY_SOURCES
  value: 'clear;nuget,<FEED_URL>,readwrite'

steps:
# Remember to add this task to allow vcpkg to upload archives via NuGet
- task: NuGetAuthenticate@0

Jeśli używasz agentów niestandardowych z systemem operacyjnym innych niż Windows, musisz zainstalować środowisko Mono do uruchamiania nuget.exe (apt install mono-complete, brew install monoitp.).

Lokalne używanie kanału informacyjnego

# On Windows Powershell
PS> & $(vcpkg fetch nuget | select -last 1) sources add `
  -name ADO `
  -Source https://pkgs.dev.azure.com/$ORG/_packaging/$FEEDNAME/nuget/v3/index.json `
  -Username $USERNAME `
  -Password $PAT
PS> $env:VCPKG_BINARY_SOURCES="nuget,ADO,readwrite"
# On Linux or OSX
$ mono `vcpkg fetch nuget | tail -n1` sources add \
  -name ADO \
  -Source https://pkgs.dev.azure.com/$ORG/_packaging/$FEEDNAME/nuget/v3/index.json \
  -Username $USERNAME \
  -Password $PAT
$ export VCPKG_BINARY_SOURCES="nuget,ADO,readwrite"

Użyj osobistego tokenu dostępu (PAT) jako hasła w celu zapewnienia maksymalnego bezpieczeństwa. Możesz wygenerować identyfikator dostępu w obszarze Ustawienia użytkownika —> osobiste tokeny dostępu lub https://dev.azure.com/<ORG>/_usersSettings/tokens.

Skrót ABI

Uwaga

Informacje na temat skrótu ABI są udostępniane jako uwaga dotycząca implementacji i zostaną zmienione bez powiadomienia.

Dla każdej kompilacji narzędzie vcpkg oblicza skrót ABI w celu określenia równoważności. Jeśli dwie kompilacje mają ten sam skrót ABI, narzędzie vcpkg rozważy je identyczne i ponownie użyje plików binarnych między projektami i maszynami.

Skrót ABI uwzględnia:

  • Każdy plik w katalogu portów
  • Zawartość i nazwa pliku potrójnego
  • Plik wykonywalny kompilatora języka C++
  • Plik wykonywalny kompilatora języka C
  • Wybrany zestaw funkcji
  • Skrót ABI każdej zależności
  • Wszystkie funkcje pomocnicze, do których portfile.cmake odwołuje się (heurystyczny)
  • Używana wersja narzędzia CMake
  • Zawartość dowolnych zmiennych środowiskowych wymienionych w VCPKG_ENV_PASSTHROUGH
  • Zawartość tekstowa pliku łańcucha narzędzi (VCPKG_CHAINLOAD_TOOLCHAIN_FILE)
  • Zestaw narzędzi GRDK (tylko w przypadku określania wartości docelowej platformy Xbox)

Pomimo tej obszernej listy możliwe jest pokonanie pamięci podręcznej i wprowadzenie nieokreśloności. Jeśli masz dodatkowe szczegóły potrzebne do śledzenia środowiska, możesz wygenerować plik potrójny z dodatkowymi informacjami w komentarzu. Te dodatkowe informacje zostaną uwzględnione w skrótach ABI i zapewnią unikatowy wszechświat plików binarnych.

Pliki nazwane .DS_Store nie są uznawane za skrót ABI.

Obliczane skróty ABI są przechowywane w każdym pakiecie i w bieżącym zainstalowanym katalogu na /share/<port>/vcpkg_abi_info.txt potrzeby inspekcji.

Przykład skrótu ABI biblioteki zlib

Włącz dane wyjściowe debugowania, aby wydrukować pełny skrót interfejsu binarnego aplikacji (ABI) pacakge. Dla biblioteki zlib:

[DEBUG] Trying to hash <path>\buildtrees\zlib\x86-windows.vcpkg_abi_info.txt
[DEBUG] <path>\buildtrees\zlib\x86-windows.vcpkg_abi_info.txt has hash bb1c96759ac96102b4b18215db138daedd3eb16c2cd3302ae7bffab2b643eb87

Skrót ABI bb1c96759ac96102b4b18215db138daedd3eb16c2cd3302ae7bffab2b643eb87 dla pakietu zlib jest konstruowany przez utworzenie skrótu wszystkich możliwych istotnych informacji w celu odróżnienia pakietów binarnych.

Wersja kompilatora jest częścią skrótu ABI i jest obliczana poniżej:

[DEBUG] -- The C compiler identification is MSVC 19.36.32538.0
[DEBUG] -- The CXX compiler identification is MSVC 19.36.32538.0
[DEBUG] #COMPILER_HASH#f5d02a6542664cfbd4a38db478133cbb1a18f315

Odpowiednie pliki, informacje o wersji kompilatora i narzędzia są skrótami w celu obliczenia końcowego skrótu ABI:

[DEBUG] <abientries for zlib:x86-windows>
[DEBUG]   0001-Prevent-invalid-inclusions-when-HAVE_-is-set-to-0.patch|750b9542cb55e6328cca01d3ca997f1373b9530afa95e04213168676936e7bfa
[DEBUG]   0002-skip-building-examples.patch|835ddecfed752e0f49be9b0f8ff7ba76541cb0a150044327316e22ca84f8d0c2
[DEBUG]   0003-build-static-or-shared-not-both.patch|d6026271dcb3d8fc74b41e235620ae31576a798e77aa411c3af8cd9e948c02b1
[DEBUG]   0004-android-and-mingw-fixes.patch|37a43eddbcb1b7dde49e7659ae895dfd0ff1df66666c1371ba7d5bfc49d8b438
[DEBUG]   cmake|3.26.2
[DEBUG]   features|core
[DEBUG]   portfile.cmake|ac63047b644fa758860dd7ba48ff9a13b058c6f240b8e8d675b8fbba035976be
[DEBUG]   ports.cmake|5a8e00cedff0c898b1f90f7d129329d0288801bc9056562b039698caf31ff3f3
[DEBUG]   post_build_checks|2
[DEBUG]   powershell|7.3.6
[DEBUG]   triplet|x86-windows
[DEBUG]   triplet_abi|3e71dd1d4afa622894ae367adbbb1ecbd42c57c51428a86b675fa1c8cad3a581-36b818778ba6f2c16962495caedb9a7b221d5be4c60de1cd3060f549319a9931-f5d02a6542664cfbd4a38db478133cbb1a18f315
[DEBUG]   usage|be22662327df993eebc437495add75acb365ab18d37c7e5de735d4ea4f5d3083
[DEBUG]   vcpkg-cmake|1b3dac4b9b0bcbef227c954b495174863feebe3900b2a6bdef0cd1cf04ca1213
[DEBUG]   vcpkg-cmake-wrapper.cmake|5d49ef2ee6448479c2aad0e5f732e2676eaba0411860f9bebabe6002d66f57d1
[DEBUG]   vcpkg.json|bc94e2540efabe36130a806381a001c57194e7de67454ab7ff1e30aa15e6ce23
[DEBUG]   vcpkg_copy_pdbs|d57e4f196c82dc562a9968c6155073094513c31e2de475694143d3aa47954b1c
[DEBUG]   vcpkg_fixup_pkgconfig|588d833ff057d3ca99c14616c7ecfb5948b5e2a9e4fc02517dceb8b803473457
[DEBUG]   vcpkg_from_git|8f27bff0d01c6d15a3e691758df52bfbb0b1b929da45c4ebba02ef76b54b1881
[DEBUG]   vcpkg_from_github|b743742296a114ea1b18ae99672e02f142c4eb2bef7f57d36c038bedbfb0502f
[DEBUG]   vcpkg_replace_string|d43c8699ce27e25d47367c970d1c546f6bc36b6df8fb0be0c3986eb5830bd4f1
[DEBUG] </abientries>

Uwaga

Wpis triplet_abi zawiera trzy skróty: skrót zawartości x86-windows pliku triplet, windows.cmake łańcuch narzędzi i skrót kompilatora. Te skróty zmienią się, jeśli zdecydujesz się na inną platformę.