Visual Studio CodeでC/C++環境を構築する(Windows)

注意:ど素人の記録用くらいに考えてください.

参考にしたサイトのURLです.基本的にここに従って進みます.

Visual Studio Codeと拡張機能のインストール

ここでVScodeをインストールします.次に,C/C++の拡張機能をインストールするためにVScodeを起動して,VScode のウィンドウ左側にあるアイコンのなかから Extentionsを選択します.

VScode 起動時のウィンドウにあるExtentionsのアイコン

Extentionsの検索欄に「c/c++」と入力して検索すれば, Microsoft公式のC/C++拡張機能がでてくるのでインストールします.画像では検索候補の一番上の拡張機能.

C/C++ での検索候補

ちなみに,VScodeの日本語化は,同じように拡張機能で「japanese」と入力すれば出てくる "Japanese Language Pack for Visual Studio Code" をインストールすれば設定できるようになります.インストール後,ポップアップが出るとおもうので,そこで選択すれば自動でVScodeが再起動して日本語で起動します.
飛ばしてしまった場合には,左下の歯車からコマンドパレット(Cnrl + Shift + P)を開いて,「configure display language」を入力すれば選択できます.

日本語化の拡張機能

ここまでくれば,VScodeの設定は一旦終わりです.

MSYS2とツールチェインのインストール

MSYS2によってMin-GW-w64を導入します.

サイトからMSYS2のインストーラーをダウンロードしてインストールします.インストールすると自動でターミナルウィンドウが起動するので次のコマンドを実行して必要なツールチェインをインストールします.

pacman -S --needed base-devel mingw-w64-x86_64-toolchain

実行しようとすると,インストールするかどうかを確認されるので,「Y」を押せばインストールが行われます.

次に,インストールしたツールチェインを使うためのPATHを通します.windowsの設定にある検索欄で「システム環境変数の編集」を調べて,これを開きます.

システム環境変数の編集を開くと現れるウィンドウ

環境変数を選択して開くと,環境変数を操作するウィンドウが開きます.ここで”Path”を選択して編集を開きます.

環境変数のウィンドウ

”新規”を選択して,インストールしたMSYS2からmingw64のbinフォルダのパスを追加します.インストール時に設定していない場合には,デフォルトのままCドライブ直下にあるはずなので「C:\msys64\mingw64\bin」だと思いますが,違う場合は確認して追加してください.

Path の編集画面

ここで,インストールが完了しているかどうか,パスが正しく通っているかどうかを確認するために,コマンドプロンプトで次のコードを実行してみてください.バージョン情報が出れば問題ないです.

gcc --version
g++ --version
cpp --version

ここまでくれば,あとはVScodeでコードを書いてコンパイルと実行するだけです.

テストとして Hello World!!! を出力してみる

VScodeで新しいテキストファイルを作成して,そこに次のコードをコピペしてみてください.

#include <iostream>

using namespace std;

int main()
{
    cout << "Hello World!!!" << endl;
}

これを好きな場所に保存して,右上の再生ボタンを押します.

コピペと保存した状態

すると,実行とデバッグの選択が現れるので「g++」を選択します.

実行と デバッグの選択画面

画面下にデバッグとターミナルが表示されてビルドが始まります.ビルドが完了すると,ターミナルに「Hello World!!!」と出力されます.ここまでできれば完了です.

一応,C言語でも試してみます.さっきと異なる新しいテキストファイルに次のコードをコピペして保存します.

#include <stdio.h>

int main(void)
{
    printf("HelloWorld");
    return 0;
}

ここで同じように再生ボタンを押して「gcc」を選択します.

Cファイルの実行とデバッグ選択画面

これでターミナルに「Hello World!!!」と出力されるはずです.

この記事が気に入ったらサポートをしてみませんか?