WSLでC++開発環境を構築する方法を完全ガイド!初心者でもできるWSL+GCCセットアップ
生徒
「WindowsでもLinuxみたいな環境でC++を勉強できるんですか?」
先生
「できますよ。WSLという機能を使えば、Windowsの中に簡単にLinuxを入れて、C++開発環境を整えることができます。」
生徒
「パソコン初心者でもWSLっていうのを使えるんですか?難しそうに聞こえます…。」
先生
「安心してください。手順をゆっくり追えば、誰でもC++の開発環境を作れます。今日はWSLとGCCでの環境構築を一緒にやってみましょう!」
1. WSLとは?初心者でも理解できる基礎知識
WSL(Windows Subsystem for Linux)は、Windowsの中でLinuxを動かすための仕組みです。つまり、特別なパソコンや複雑な設定をしなくても、普段使っているWindowsのままでLinux環境を利用できる便利な機能です。C++の学習では、Linuxのほうがサンプルプログラムを動かしやすく、情報も多いため、多くの入門者がWSLを使って開発を始めています。
たとえば、Windowsの部屋の中に「Linux専用の作業机を置く」イメージです。机(Linux環境)は独立しているので、C++のコンパイルやコマンド操作を気にせず練習できます。
2. WSLをインストールしよう(Windows 10 / 11)
まずはWSLを有効化して、Linuxをインストールします。初心者でもミスしにくい手順で説明します。
◆ ステップ1:PowerShellを管理者として開く
画面左下のスタートボタンを右クリックして「Windows PowerShell(管理者)」を選びます。
◆ ステップ2:WSLをインストールするコマンドを実行
下のコマンドをコピーしてPowerShellに貼り付けて実行します。
wsl --install
これでWSLとUbuntu(Linuxの一種)が自動的にインストールされます。再起動を求められたら、指示に従ってパソコンを再起動してください。
◆ ステップ3:Ubuntuを初期設定する
再起動後、Ubuntuが自動で開きます。初回起動では、Linuxで使うユーザー名とパスワードを入力します。これはC++開発時に必要なので覚えておきましょう。
3. UbuntuでC++コンパイラ(GCC)をインストールしよう
Linux環境が準備できたら、次にC++コンパイラを入れます。コンパイラとは、書いたC++コードをコンピューターが理解できる形に変換するソフトのことです。
◆ ステップ1:Ubuntuを更新する
まずはUbuntuを最新状態にします。
sudo apt update
sudo apt upgrade -y
◆ ステップ2:GCCとG++をインストール
C++のコンパイルにはG++を使います。
sudo apt install g++ -y
インストールが終わったら、バージョン確認もしてみましょう。
g++ --version
4. C++のサンプルプログラムを実行してみよう
きちんと環境が整っているか確認するため、簡単なプログラムを作りましょう。
◆ ステップ1:ファイルを作る
Ubuntuのターミナルで次のコマンドを入力します。
nano hello.cpp
するとテキスト編集画面が開くので、次のコードを貼り付けて保存します。
#include <iostream>
int main() {
std::cout << "Hello WSL C++!" << std::endl;
return 0;
}
◆ ステップ2:コンパイルして実行する
g++ hello.cpp -o hello
./hello
実行すると、次のように表示されます。
Hello WSL C++!
5. コード保存場所とWindows側との共有
WSLの便利な点は、WindowsとLinuxのファイルを簡単に共有できることです。WSL内のファイルは、Windows側では次の場所に保存されています。
\\wsl$\Ubuntu\home\(あなたのユーザー名)
ここにC++のファイルを置いておけば、Visual Studio Codeなどのエディタで編集しながらLinuxでコンパイルできるため、初心者にも扱いやすい開発環境になります。
6. トラブルが起きたときの基本チェック
環境構築では、たまにエラーが出ることがあります。よくあるものとしては「g++が見つからない」「WSLが起動しない」などです。そんなときは次の点を確認してみましょう。
- WSLが有効化されているか
- Ubuntuのアップデートが正しく行われたか
- g++がインストールされているか
- パスワードを忘れていないか
これらを確認するだけで多くの問題が解決します。初心者の方ほど、慌てず一つずつ見直す習慣をつけるとスムーズに開発を続けられます。
まとめ
WSLを使ったC++開発環境構築の全体像を振り返ろう
この記事では、Windows環境でC++を学習したい初心者の方に向けて、WSLを使ったC++開発環境の構築方法を基礎から丁寧に解説してきました。 WSLを利用することで、これまでLinux専用と思われがちだったC++の開発環境を、普段使っているWindowsパソコンの中にそのまま用意できる点が大きな特徴です。 仮想マシンのように重たい設定を行う必要がなく、公式にサポートされている仕組みでLinuxを扱えるため、学習用途としても実践用途としても非常に相性が良い環境と言えます。
最初に学んだWSLの基本では、「Windowsの中でLinuxを動かす仕組み」という考え方を押さえました。 これにより、C++のコンパイルや実行に必要なLinuxコマンドを、Windows上でそのまま使えるようになります。 C++はLinux環境での情報量が多く、サンプルコードや解説記事もLinux前提のものが多いため、WSLを使えるようになるだけで学習の幅が大きく広がります。
WSLとUbuntu、GCCの役割を整理しよう
環境構築の手順では、まずWSLを有効化し、その中にUbuntuをインストールしました。 UbuntuはLinuxの中でも初心者向けとして人気が高く、C++の学習環境としても多くの実績があります。 そのUbuntu上に、C++のコンパイラであるG++(GCC)をインストールすることで、C++プログラムをコンパイルして実行できる状態を整えました。
コンパイラとは、人が書いたC++のコードをコンピューターが理解できる形に変換するための重要なソフトです。 g++コマンドを使ってソースコードをコンパイルし、実行ファイルを作成する一連の流れを体験することで、C++がどのように動いているのかを実感できたはずです。 この流れを理解しておくと、今後より大きなプログラムを作る際にも迷いにくくなります。
サンプルプログラムで確認する基本操作
記事内で作成したHello Worldのサンプルプログラムは、C++開発環境が正しく動作しているかを確認するための大切なステップでした。 ファイルを作成し、エディタでコードを書き、g++でコンパイルして実行するという一連の操作は、C++学習の土台となる基本作業です。 この操作に慣れておくことで、今後クラスや関数、標準ライブラリを使った本格的なプログラムにもスムーズに進めます。
#include <iostream>
int main() {
int a;
int b;
std::cout << "一つ目の数字を入力してください:" << acknowledges std::endl;
std::cin >> a;
std::cout << "二つ目の数字を入力してください:" << std::endl;
std::cin >> b;
std::cout << "合計は " << a + b << " です。" << std::endl;
return 0;
}
このように、WSL上のC++環境では、標準入力と標準出力を使った基本的なプログラムも問題なく実行できます。 Linux環境でのC++実行体験を積み重ねることで、コマンド操作にも自然と慣れていくでしょう。
WindowsとWSLのファイル共有を活用しよう
WSLの大きな利点の一つが、WindowsとLinuxのファイル共有が簡単にできる点です。 記事で紹介したパスを使えば、Windows側のエクスプローラーからWSL内のファイルに直接アクセスできます。 これにより、Visual Studio CodeなどのWindows用エディタでコードを書き、WSL側でコンパイルと実行を行うといった使い方が可能になります。
初心者の方にとっては、慣れ親しんだWindowsの操作感を保ったままLinux環境を使えることが、大きな安心材料になります。 無理にすべてをLinux操作に切り替える必要はなく、少しずつ理解を深めていけば問題ありません。
生徒
「最初はWSLとかUbuntuって聞くだけで難しそうでしたけど、手順通りにやったらC++がちゃんと動いて感動しました。 WindowsのままでLinux環境が使えるのは便利ですね。」
先生
「そうですね。WSLは初心者にとっても扱いやすい環境です。 C++は環境構築でつまずきやすい言語ですが、ここを乗り越えられたのは大きな一歩ですよ。」
生徒
「g++でコンパイルして実行する流れも少し分かってきました。 エラーが出ても、落ち着いて確認すれば直せそうな気がします。」
先生
「その姿勢がとても大切です。 これからクラスや標準ライブラリ、アルゴリズムを学ぶときも、今回作ったWSLの環境が必ず役立ちます。 焦らず、少しずつC++に慣れていきましょう。」