Szkolenie
Moduł
Dowiedz się, jak skonfigurować program Visual Studio Code dla języka C# i jak używać tego profesjonalnego środowiska IDE do tworzenia i uruchamiania aplikacji konsolowych.
Ta przeglądarka nie jest już obsługiwana.
Przejdź na przeglądarkę Microsoft Edge, aby korzystać z najnowszych funkcji, aktualizacji zabezpieczeń i pomocy technicznej.
W tym samouczku pokazano, jak utworzyć program "Hello World" języka C++, który korzysta z biblioteki za pomocą fmt
narzędzia CMake, programu vcpkg i programu Visual Studio. Zainstalujesz zależności, skonfigurujesz, skompilujesz i uruchomisz prostą aplikację.
Klonowanie repozytorium
Pierwszym krokiem jest sklonowanie repozytorium vcpkg z usługi GitHub. Repozytorium zawiera skrypty w celu uzyskania pliku wykonywalnego vcpkg i rejestru wyselekcjonowanych bibliotek open source obsługiwanych przez społeczność programu vcpkg. Aby to zrobić, uruchom polecenie:
git clone https://github.com/microsoft/vcpkg.git
Rejestr wyselekcjonowanych vcpkg to zestaw ponad 2000 bibliotek typu open source. Te biblioteki zostały zweryfikowane przez potoki ciągłej integracji vcpkg do współpracy. Chociaż repozytorium vcpkg nie zawiera kodu źródłowego dla tych bibliotek, przechowuje przepisy i metadane do kompilowania i instalowania ich w systemie.
Uruchamianie skryptu bootstrap
Po sklonowaniu repozytorium vcpkg przejdź do vcpkg
katalogu i wykonaj skrypt bootstrap:
cd vcpkg && bootstrap-vcpkg.bat
cd vcpkg; .\bootstrap-vcpkg.bat
cd vcpkg && ./bootstrap-vcpkg.sh
Skrypt bootstrap wykonuje testy wymagań wstępnych i pobiera plik wykonywalny vcpkg.
I już! Narzędzie vcpkg jest skonfigurowane i gotowe do użycia.
Tworzenie projektu programu Visual Studio
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio przedstawiający sposób tworzenia nowego projektu CMake w programie Visual Studio
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio na potrzeby nazewnictwa projektu CMake i kliknięcia przycisku "utwórz".
Skonfiguruj zmienną VCPKG_ROOT
środowiskową.
Uwaga
Ustawienie zmiennych środowiskowych w ten sposób wpływa tylko na bieżącą sesję terminalu. Aby wprowadzić te zmiany na stałe we wszystkich sesjach, ustaw je za pomocą panelu Zmienne środowiskowe systemu Windows.
Otwórz wbudowane okno programu PowerShell dla deweloperów w programie Visual Studio.
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio dla wbudowanego okna dewelopera programu PowerShell
Uruchom następujące polecenia:
$env:VCPKG_ROOT="C:\path\to\vcpkg"
$env:PATH="$env:VCPKG_ROOT;$env:PATH"
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio dla wbudowanego okna dewelopera programu PowerShell pokazujący sposób konfigurowania VCPKG_ROOT i dodawania go do ścieżki.
Otwórz wiersz polecenia Deweloper w programie Visual Studio.
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio dla dewelopera wiersza polecenia.
Uruchom następujące polecenia:
set "VCPKG_ROOT=C:\path\to\vcpkg"
set PATH=%VCPKG_ROOT%;%PATH%
Zrzut ekranu przedstawiający wiersz polecenia dla deweloperów programu Visual Studio przedstawiający sposób konfigurowania VCPKG_ROOT i dodawania go do ścieżki.
Ustawienie VCPKG_ROOT
pomaga programowi Visual Studio zlokalizować wystąpienie programu vcpkg.
Dodanie go w celu PATH
zapewnia, że można uruchamiać polecenia vcpkg bezpośrednio z poziomu powłoki.
Wygeneruj plik manifestu i dodaj zależności.
Uruchom następujące polecenie, aby utworzyć plik manifestu vcpkg (vcpkg.json
):
vcpkg new --application
Polecenie vcpkg new
dodaje vcpkg.json
plik i vcpkg-configuration.json
plik w katalogu projektu.
fmt
Dodaj pakiet jako zależność:
vcpkg add port fmt
Twoje vcpkg.json
powinny teraz zawierać:
{
"dependencies": [
"fmt"
]
}
Jest to plik manifestu. Narzędzie vcpkg odczytuje plik manifestu, aby dowiedzieć się, jakie zależności mają być instalowane i integrowane z programem CMake w celu zapewnienia zależności wymaganych przez projekt.
Wygenerowany vcpkg-configuration.json
plik wprowadza plan bazowy , który nakłada minimalne ograniczenia wersji na zależności projektu. Modyfikowanie tego pliku wykracza poza zakres tego samouczka. Chociaż nie ma zastosowania w tym samouczku, dobrym rozwiązaniem jest zachowanie vcpkg-configuration.json
kontroli nad plikiem w celu zapewnienia spójności wersji w różnych środowiskach deweloperskich.
Zmodyfikuj plik helloworld.cpp
.
Zastąp zawartość helloworld.cpp
następującym kodem:
#include <fmt/core.h>
int main()
{
fmt::print("Hello World!\n");
return 0;
}
Ten plik źródłowy zawiera <fmt/core.h>
nagłówek, który jest częścią fmt
biblioteki. Funkcja main()
wywołuje fmt::print()
komunikat "Hello World!" do konsoli.
CMakePresets.json
Skonfiguruj plik.
Narzędzie CMake może automatycznie łączyć biblioteki zainstalowane przez narzędzie vcpkg, gdy CMAKE_TOOLCHAIN_FILE
jest ustawione na użycie niestandardowego łańcucha narzędzi vcpkg. Może to być skompilowane przy użyciu plików ustawień wstępnych narzędzia CMake.
Zmodyfikuj CMakePresets.json
, aby dopasować zawartość poniżej:
{
"version": 2,
"configurePresets": [
{
"name": "vcpkg",
"generator": "Ninja",
"binaryDir": "${sourceDir}/build",
"cacheVariables": {
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
}
}
]
}
Utwórz CMakeUserPresets.json
z następującą zawartością:
{
"version": 2,
"configurePresets": [
{
"name": "default",
"inherits": "vcpkg",
"environment": {
"VCPKG_ROOT": "<path to vcpkg>"
}
}
]
}
Plik CMakePresets.json
zawiera jedno ustawienie wstępne o nazwie "vcpkg", które ustawia zmienną CMAKE_TOOLCHAIN_FILE
. Plik CMakeUserPresets.json
ustawia zmienną VCPKG_ROOT
środowiskową, aby wskazywała ścieżkę bezwzględną zawierającą lokalną instalację programu vcpkg. Zaleca się, aby nie zaewidencjonować CMakeUserPresets.json
systemów kontroli wersji.
Edytuj plik CMakeLists.txt
.
Zastąp zawartość pliku CMakeLists.txt
następującym kodem:
cmake_minimum_required(VERSION 3.10)
project(HelloWorld)
find_package(fmt CONFIG REQUIRED)
add_executable(HelloWorld helloworld.cpp)
target_link_libraries(HelloWorld PRIVATE fmt::fmt)
Teraz podzielmy działanie każdego wiersza w CMakeLists.txt
pliku:
cmake_minimum_required(VERSION 3.10)
: określa, że minimalna wersja narzędzia CMake wymagana do skompilowania projektu to 3.10. Jeśli wersja narzędzia CMake zainstalowana w systemie jest niższa niż ta, kompilacja zakończy się niepowodzeniem.project(HelloWorld)
: Ustawia nazwę projektu na "HelloWorld".find_package(fmt CONFIG REQUIRED)
: szuka fmt
biblioteki przy użyciu pliku konfiguracji narzędzia CMake. Słowo REQUIRED
kluczowe gwarantuje wygenerowanie błędu, jeśli pakiet nie zostanie znaleziony.add_executable(HelloWorld helloworld.cpp)
: dodaje element docelowy wykonywalny o nazwie "HelloWorld", skompilowany z pliku helloworld.cpp
źródłowego .target_link_libraries(HelloWorld PRIVATE fmt::fmt)
: określa, że HelloWorld
plik wykonywalny powinien łączyć się z biblioteką fmt
. Słowo PRIVATE
kluczowe wskazuje, że fmt
jest wymagane tylko do kompilowania HelloWorld
i nie powinno być propagowane do innych projektów zależnych.Skompiluj projekt.
Naciśnij Ctrl+Shift+B
, aby skompilować projekt w programie Visual Studio.
Uruchom aplikację.
Na koniec uruchom plik wykonywalny:
Zrzut ekranu przedstawiający interfejs użytkownika programu Visual Studio na potrzeby uruchamiania pliku wykonywalnego.
Powinny zostać wyświetlone dane wyjściowe:
Zrzut ekranu przedstawiający dane wyjściowe programu — "Hello World!"
Aby dowiedzieć się więcej na temat vcpkg.json
usługi , zobacz dokumentację referencyjną:
Opinia o produkcie vcpkg
vcpkg to projekt typu open source. Wybierz link, aby przekazać opinię:
Szkolenie
Moduł
Dowiedz się, jak skonfigurować program Visual Studio Code dla języka C# i jak używać tego profesjonalnego środowiska IDE do tworzenia i uruchamiania aplikacji konsolowych.