WSL2とVSCodeによるC/C++の開発環境構築
はじめに
この記事は、WindowsへWSL2(Ubuntu)とVSCodeをインストールし、C言語の開発ができるようになるまでの手順を個人的な備忘録としてまとめたものです。
WSLやUbuntu、VSCodeその他のアップデートおよび仕様変更によって将来的にこの手順が使用できなくなる可能性があります。(記.2023/3/24)
前提条件
- OSがWindows10または11である
VSCodeのインストール
- VSCodeのインストーラーをダウンロードし、Windowsにインストールする。
- 左側ツールバーのExtensions(拡張機能)というタブを開き、
Japanese Language Pack for Visual Studio Code
とRemote Development
という拡張機能をインストールする。
VSCodeを再起動し、日本語化されていればVSCodeのインストールおよび初期設定は終了です。
WSL2のインストール
- Windows PowerShellを管理者権限で起動(右クリック→管理者として実行)
- 以下のコマンドを実行し、WSL2をインストール(かなり時間がかかります)
wsl --install
- 以下のコマンドを実行し、WSL2を最新版にアップデート(任意)
wsl --update
- インストールが正常に終了した旨の表示が確認できれば、PCを再起動
以上でWSL2およびUbuntuのインストールは終了です。WSLのinstallコマンドは特に指定がなければLinuxディストリビューションとしてUbuntuをインストールします。以降はUbuntu上で操作を行います。
要するにUbuntuという名前のLinux系OSとそれをWindowsの中で動かすための外箱としてWSL2をインストールしたよ、というレベルの認識で大丈夫です。
Ubuntuの初期設定
- 「最近追加されたアプリ」などからUbuntuを探し、起動(PC再起動後に自動で起動する場合もあります)
-
Enter new UNIX username:
と表示されたら、Ubuntuで使用するユーザー名を入力(初回起動時はメッセージが表示されるまでしばらくかかります) -
New password:
と表示されるので、パスワードを入力 -
Retype new password:
と表示されるので、パスワードを再度入力
環境によってはUbuntuの再起動が必要な場合がありますが、username@COMPUTER:~$
のような表示が確認できればUbuntuの初期設定は終了です。
パスワードの入力の際は入力している文字が表示されませんが、きちんと入力されています。タイプミスには気をつけましょう。また、ここで入力したパスワードを忘れてしまうとUbuntuの中に入れなくなるため、絶対に忘れないようにしてください。
C言語のコンパイラを導入する
- Ubuntuを開いて以下のコマンドを実行し、Ubuntuを最新版にアップデート(任意)
途中、初期設定時に設定したパスワードが聞かれたり、続けますか?yes/noのようなことを聞かれたりしますが、適宜入力してEnterキーを押してください。かなり時間がかかると思います。
sudo apt update
sudo apt upgrade
- 以下のコマンドを実行し、コンパイラを導入
build-essentialとは、gccというC言語のコンパイラを含む開発に便利なツールたちをまとめたパックのようなものという認識で問題ありません。こちらもかなり時間がかかると思います。
sudo apt install build-essential
- 以下のコマンドを実行し、導入できているかどうか確認
gcc --version
gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
のようにバージョンが表示されれば正しく導入できています。
C言語を実行してみる
- 以下のコマンドを実行し、C言語を実行するためのフォルダを作る
mkdir workspace
- 以下のコマンドを実行し、今作ったフォルダの中に移動
cd workspace
- 以下のコマンドを実行し、今いるフォルダでVSCodeを開く
code .
- VSCodeの左側のツールバーからエクスプローラーというタブを開き、右クリックして
hello.c
という名前で新しいファイルを作成 -
hello.c
を開き、以下のコードを貼り付けて保存(「Hello, World!」と出力するC言語のプログラムです)
#include <stdio.h>
int main() {
printf("Hello, World!\n");
}
- VSCode上部のツールバーからターミナルを選択し、新しいターミナルを開いて以下のコマンドを実行
gcc hello.c
-
hello.c
と同じ階層にa.out
というファイルが生成されていたら、以下のコマンドを実行して動かしてみる
./a.out
ターミナルにHello, World!
と表示されれば無事に実行できています。
以上でC言語の環境構築は終了です。お疲れ様でした。
おまけ: C++言語を実行してみる
build-essentialの中にはC++という言語のコンパイラも入っており、ここまで環境構築を進められたなら、C++という言語も実行できるようになっているはずです。C++というのはC言語の機能をを拡張した言語で、C言語とは別の言語です。
- C言語の時と同様に、
hello.cpp
という名前で新しいファイルを作成(.cppというのがC++の拡張子になります) -
hello.cpp
を開き、以下のコードを貼り付けて保存(「Hello, World!」と出力するC++言語のプログラムです)
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl;
}
- VSCode上部のツールバーからターミナルを選択し、新しいターミナルを開いて以下のコマンドを実行(C++を実行する時はgccではなくg++というコマンドを使います)
g++ hello.cpp
-
hello.cpp
と同じ階層にa.out
というファイルが生成されていたら、以下のコマンドを実行して動かしてみる
./a.out
ターミナルにHello, World!
と表示されれば無事に実行できています。
Discussion