라이브러리 설치
llvm을 예로 살펴보겠습니다. 다음을 사용하여 설치할 수 있습니다.
> vcpkg install llvm
또는 다음을 사용하는 매니페스트를 통해 다음을 수행합니다.
{
"dependencies": ["llvm"]
}
이제 llvm이 설치되면 다음을 실행할 수 있습니다.
> installed\x86-windows\bin\llc.exe --version
다음이 표시됩니다.
Registered Targets:
x86 - 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64
추가 기능 설치
그러나 llvm은 ARM에서 SPARC, SystemZ에 이르기까지 더 많은 대상을 지원합니다. 그러나 현재 설치에는 ARM이 대상으로 포함되지 않습니다. 따라서 vcpkg를 사용하여 다른 LLVM 대상을 설치하는 방법을 알아야 합니다. llvm 포트는 "target-*" 기능을 통해 이를 허용합니다.
이렇게 하면 다음을 수행합니다.
> vcpkg search llvm
다음을 확인할 수 있습니다.
llvm 10.0.0#6 The LLVM Compiler Infrastructure
llvm[clang] Build C Language Family Front-end.
llvm[clang-tools-extra] Build Clang tools.
...
llvm[target-all] Build with all backends.
llvm[target-amdgpu] Build with AMDGPU backend.
llvm[target-arm] Build with ARM backend.
...
설치 기능 구문을 사용하여 이러한 대상을 설치할 수 있습니다.
> vcpkg install llvm[target-arm] # Installs LLVM with the ARM target
{
"dependencies": [{ "name": "llvm", "features": ["target-arm"] }]
}
기본 기능 옵트아웃
llvm 포트에는 사용자가 원하지 않을 수 있는 몇 가지 기본 기능이 포함되어 있습니다. 예를 들어 clang
이 기능은 기본값입니다. 즉 vcpkg install llvm
, clang를 빌드하고 설치합니다.
LLVM을 백 엔드로 사용하는 컴파일러를 작성하는 경우 clang를 설치하는 데 관심이 없을 수 있으며, 특수 core
한 "기능"으로 기본 기능을 사용하지 않도록 설정하여 이 작업을 수행할 수 있습니다.
> vcpkg install llvm[core,target-arm] # removing the default-feature with "core" also removes all of the default targets you get
또는 매니페스트 파일에서:
{
"dependencies": [{
"name": "llvm",
"default-features": false,
"features": ["target-arm"]
}]
}
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
vcpkg