Install tools on the command line using vcpkg
Introduction
Install vcpkg
Initialize vcpkg
Create a vcpkg-configuration.json file
Use vcpkg
Activate a license
Remove vcpkg
Next Steps
Install tools on the command line using vcpkg
Use vcpkg
The following commands help you to work with vcpkg. The most important one is activate as this activates all tools specified by the configuration file.
Activate vcpkg
Activate tools specified by vcpkg-configuration.json
vcpkg-shell activate
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__Artifact Version Status Dependency Summary
__output__arm:tools/open-cmsis-pack/cmsis-toolbox 2.0.0 installed Arm distributed Open-CMSIS-Pack cli tools
__output__arm:compilers/arm/armclang 6.20.0 installed Arm Compiler for Embedded
__output__microsoft:tools/kitware/cmake 3.25.2 installed Kitware's cmake tool
__output__microsoft:tools/ninja-build/ninja 1.10.2 installed Ninja is a small build system with a focus on speed.
Deactivate artifacts specified by vcpkg-configuration.json
vcpkg-shell deactivate
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__Deactivating: /Users/myuser/projects/myproject
Activating tools without vcpkg-configuration.json
vcpkg-shell use cmsis-toolbox
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__Artifact Version Status Dependency Summary
__output__arm:tools/open-cmsis-pack/cmsis-toolbox 2.0.0 installed Arm distributed Open-CMSIS-Pack cli tools
Retrieve all available versions of a tool
vcpkg-shell use open-cmsis-pack
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__error: Unable to resolve artifact: open-cmsis-pack
__output__Possible matches:
__output__ arm:tools/open-cmsis-pack/cmsis-toolbox-2.0.0
__output__ arm:tools/open-cmsis-pack/cmsis-toolbox-2.0.0-dev3
__output__ arm:tools/open-cmsis-pack/cmsis-toolbox-2.0.0-dev2
__output__ arm:tools/open-cmsis-pack/cmsis-toolbox-2.0.0-dev1
__output__ arm:tools/open-cmsis-pack/cmsis-toolbox-2.0.0-dev0
__output__ arm:tools/open-cmsis-pack/ctools-2.0.0-dev0
__output__ arm:tools/open-cmsis-pack/ctools-1.7.0
__output__ arm:tools/open-cmsis-pack/ctools-1.6.0
__output__ arm:tools/open-cmsis-pack/ctools-1.5.0
List available artifacts
For example, tools
vcpkg-shell find artifact tools
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__Artifact Version Summary
__output__microsoft:tools/kitware/cmake 3.25.2 Kitwares cmake tool
__output__microsoft:tools/ninja-build/ninja 1.10.2 Ninja is a small build system with a focus on speed.
__output__microsoft:tools/arduino/arduino-cli 0.18.3 Arduino IDE
__output__microsoft:tools/microsoft/openocd 0.12.0 Free and open on-chip debugging
__output__arm:tools/arm/cmsis-core-tools 5.2.0 Arm CMSIS Core Tools
__output__arm:tools/open-cmsis-pack/cmsis-toolbox 2.0.0 Arm distributed Open-CMSIS-Pack cli tools
__output__arm:tools/open-cmsis-pack/ctools 2.0.0-dev0 Arm distributed Open-CMSIS-Pack cli tools
__output__arm:tools/arm/uv2csolution v1.0.0 *.uvprojx/*.uvmpw to csolution/cproject converter
For example, compilers
vcpkg-shell find artifact compilers
__output__
__output__warning: vcpkg-artifacts is experimental and may change at any time.
__output__Artifact Version Summary
__output__microsoft:compilers/arm-none-eabi-gcc 10.3.1-2021.10 GCC compiler for ARM CPUs.
__output__arm:compilers/arm/llvm-embedded 16.0.0 LLVM Embedded Toolchain for Arm CPUs.
__output__arm:compilers/arm/arm-none-eabi-gcc 12.2.1-mpacbti GCC compiler for ARM CPUs.
__output__arm:compilers/arm/armclang 6.20.0 Arm Compiler for Embedded
Working with the vcpkg-configuration.json file
Create a new vcpkg-configuration.json file
vcpkg-shell new --application
Add artifact to vcpkg-configuration.json file
vcpkg-shell add artifact cmake
Remove artifact to vcpkg-configuration.json file
vcpkg-shell remove microsoft:tools/kitware/cmake
Update a registry
For example, the arm registry:
vcpkg-shell x-update-registry arm
Before using the Arm Compiler, you need to activate a license. The next step shows how to do that.