An Embedded Engineer’s Blog

とある組み込みエンジニアの備忘録的なブログです。

WSL + Visual Studio/Visual Studio CodeでC/C++開発環境構築

まえがき

WindowsでWSL(Windwos Subsystem for Linux)にLinux環境をインストールして、Visual Studio/Visual Studio CodeC/C++開発を行うための環境構築やTipsを記録として残しておきます。

今回はWSLのインストールおよび初期設定、起動・終了について記載します。


前提条件

今回の記事は以下の環境で実行しています。


WSL/Linuxディストリビューションインストール

1. デフォルトインストール

WSLとLinuxの規定のUbuntuディストリビューションをインストールする場合は、PowerShellで次のコマンドを実行することでインストールできます。

wsl --install


2. WSLバージョン更新

WSLのバージョンを更新するには以下のコマンドを実行します。

wsl --update

上記ではMicrosoft Storeから更新プログラムがダウンロードされます。
Microsoft Storeではなく、GitHubからダウンロードしたい場合は、--web-downloadオプションを付けてコマンドを実行します。

wsl --update --web-download


3. ディストリビューションの選択インストール

規定のUbuntuディストリビューション以外をインストールしたい場合は、次のコマンドで利用可能なディストリビューション一覧を表示することができます。

wsl --list --online


実行すると、以下のように結果が表示されます。

NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
Ubuntu-24.04                           Ubuntu 24.04 LTS
OracleLinux_7_9                        Oracle Linux 7.9
OracleLinux_8_7                        Oracle Linux 8.7
OracleLinux_9_1                        Oracle Linux 9.1
openSUSE-Leap-15.6                     openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5           SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-Server-15-SP6    SUSE Linux Enterprise Server 15 SP6
openSUSE-Tumbleweed                    openSUSE Tumbleweed


「NAME」列の名前を指定することで該当のディストリビューションをインストールすることができます。

wsl --install Ubuntu-24.04


WSL/Linuxディストリビューション初期設定

1. デフォルトユーザ設定

wsl --installコマンドでディストリビューションをインストールすると、最初にデフォルトユーザ名とパスワードを聞かれますので、好きなユーザ名とパスワードを入力します。

インストール中: Ubuntu 24.04 LTS
Ubuntu 24.04 LTS がインストールされました。
Ubuntu 24.04 LTS を起動しています...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: httpowershell://aka.ms/wslusers
Enter new UNIX username: <ユーザ名を入力>
New password:<パスワードを入力(タイプしても表示されない)>
Retype new password:<パスワードをもう一度入力(タイプしても表示されない)>
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

Welcome to Ubuntu 24.04 LTS (GNU/Linux 5.15.153.1-microsoft-standard-WSL2 x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Sun Aug  4 22:37:19 JST 2024

  System load:  0.04                Processes:             52
  Usage of /:   0.1% of 1006.85GB   Users logged in:       0
  Memory usage: 4%                  IPv4 address for eth0: 172.29.53.122
  Swap usage:   0%


This message is shown once a day. To disable it please create the
/home/<user_name>/.hushlogin file.


ユーザ名/パスワードを設定すると、インストールしたディストリビューションのシェルが立ち上がります。

<user_name>@<pc_name>:~$


2. rootパスワード設定

Ubuntuではインストール直後はrootのパスワードが設定されていないため、自分で設定する必要があります。
Ubuntu側のシェルで以下のコマンドを入力します。

~$ sudo passwd root


sudoコマンドを実行したアカウント(インストール時に設定したユーザ)のパスワードと、rootアカウントに設定するパスワードを入力します。

[sudo] password for <user_name>: <インストール時に設定したユーザのパスワード>
New password:<root用のパスワード>
Retype new password:<root用のパスワード再入力>
passwd: password updated successfully


su -コマンドでrootユーザに切り替えて、パスワードが設定されていることを確認します。

~$ su -
Password:<root用のパスワード>
root@<pc_name>:~#


exitコマンドで元のユーザに戻ります。

~# exit
logout
<user_name>@<pc_name>:~$


またはsu - <user_name>でも元のユーザに戻れます。

~# su - <user_name>
<user_name>@<pc_name>:~$


WSL起動/終了

1. ディストリビューションから抜ける(Linux シェル終了)

起動中のLinux シェルから抜けるためにはexitコマンドを実行します。 (先ほど)

~$ exit
logout
この操作を正しく終了しました。


2. WSL実行(Linuxシェル起動)

WSLを実行し、Linuxシェルを起動する場合はPowerShell上でwslコマンドを実行します。 引数に何も指定しない場合はデフォルトのUbuntuディストリビューションが起動します。

wsl


特定のディストリビューションを起動したい場合は-dオプションでディストリビューション名を指定します。

wsl -d Ubuntu-24.04


3. WSLシャットダウン

実行中のすべてのディストリビューションとWSL2の仮想マシンを終了するためには、PowerShellから以下のコマンドを実行します。
メモリの使用制限を変更する場合や .wslconfig ファイルを変更する場合など、WSL2仮想マシン環境の再起動を求められる場合に必要となります。

wsl --shutdown


4. ディストリビューション実行停止

指定したディストリビューションを終了/実行を停止するには、PowerShellから以下のコマンドを実行します。

wsl --terminate Ubuntu-24.04


その他の情報

Microsoft公式のWSLドキュメントを参照してください。


まとめ

今回はWSLのインストールおよび初期設定、起動・終了について説明しました。
次回は、Visual Studio/Visual Studio Codeでコーディング/デバッグを行うための初期設定について書こうと思います。