Udostępnij za pośrednictwem


Trojaczki

Triplet to standardowy termin używany w kompilowaniu krzyżowym jako sposób całkowitego przechwytywania środowiska docelowego (procesora CPU, systemu operacyjnego, kompilatora, środowiska uruchomieniowego itp.) w jednej, wygodnej nazwie.

W narzędziu vcpkg trojacy opisują wyimaginowany "docelowy zestaw konfiguracji" dla każdej biblioteki. W ramach trypletu biblioteki są zwykle kompilowane przy użyciu tej samej konfiguracji, ale nie jest to wymagane. Na przykład można mieć jeden potrójny, który tworzy openssl statycznie i zlib dynamicznie, taki, który kompiluje je zarówno statycznie, jak i jeden, który kompiluje je dynamicznie (wszystkie dla tego samego docelowego systemu operacyjnego i architektury).

Pojedyncza kompilacja będzie używać plików z maksymalnie dwóch trojaków: triplet docelowy i triplet hosta. Jeśli musisz zastosować różne ustawienia dla różnych bibliotek, musisz utworzyć pojedynczą niestandardową trójkę z użyciem tej kombinacji ustawień. Zobacz dostosowywanie poszczególnych portów, aby dowiedzieć się, jak to zrobić.

Narzędzie vcpkg zawiera wstępnie zdefiniowane trojaczki dla wielu typowych platform i konfiguracji. Uruchom polecenie vcpkg help triplet , aby uzyskać listę dostępnych w danym środowisku.

Wybór potrójny

Aby wybrać docelową trójkę:

Aby wybrać triplet hosta dla bieżącej maszyny:

Trojaczki społeczności

Potrójne zawarte w folderze triplets\community nie są testowane przez ciągłą integrację rejestru nadzorowanego, ale są często wymagane przez społeczność. Ponieważ nie mamy ciągłego pokrycia, aktualizacje portów mogą przerwać zgodność z trojakami społeczności. Chętnie akceptujemy i przeglądamy wkład, który ma na celu rozwiązanie problemów z tymi trojakami.

W przypadku korzystania z potrójnej społeczności podczas instalacji pakietu zostanie wydrukowany komunikat podobny do następującego:

-- Using community triplet x86-uwp. This triplet configuration is not guaranteed to succeed.
-- [COMMUNITY] Loading triplet configuration from: D:\src\vcpkg\triplets\community\x86-uwp.cmake

Dodawanie lub zastępowanie trójkropków

Narzędzie vcpkg można rozszerzyć, zastępując trzykropki w polu lub tworząc nowe trojaczki dla danego projektu.

Najpierw skopiuj wbudowany plik potrójny z triplets\ katalogu do innej lokalizacji systemu plików. Następnie dodaj ten katalog do listy ścieżek potrójnych nakładek podczas interakcji z vcpkg.

Zobacz nasz przykład trójkropków nakładek, aby zapoznać się z bardziej szczegółowym przewodnikiem.

Uwagi

Domyślny triplet podczas uruchamiania dowolnego polecenia vcpkg to %VCPKG_DEFAULT_TRIPLET% lub wybór specyficzny dla platformy, jeśli ta zmienna środowiskowa jest niezdefiniowana.

  • Windows: x64-windows
  • Linux: x64-linux
  • OSX: x64-osx

Zalecamy użycie systematycznego schematu nazewnictwa podczas tworzenia nowych trójek. Schemat nazewnictwa łańcucha narzędzi systemu Android jest dobrym źródłem inspiracji: https://developer.android.com/ndk/guides/standalone_toolchain.html.