プログラミング

【WSL】Windows10とUbuntuとVSCodeで快適なプログラミング環境を構築

VSCodeからWSLを使う

こんにちは。

現役エンジニアの”はやぶさ”@Cpp_Learningです。

WindowsやLinux(Ubuntu/Redmineなど)でソフトウェア開発をしています。

会社が支給するPCが基本的にWindowsマシンなので…

Windows7のときは、VMでLinuxをインストールしたり、デュアルブートにすることで両方のOSを使っていました。

最近、Windows10を手に入れ「Windows Subsystem for Linux」により、簡単にWindowsからLinux(Ubuntuなど)を使えることを知ったので…

はやぶさ
はやぶさ
さっそく自分好みのプログラミング環境を整えてみました!

WindowsアプリでGUIを使いつつ、Linux(Ubuntu)のターミナルを叩ける!…端的に言って最高でした(*・ω・)ノ♪

「何をインストールしたか?」などの備忘録も兼ねて本記事を書きます。

ご参考までに

Ubuntuをインストールしました!!

WSLのインストール方法

「Windows Subsystem for Linux(WSL)とは?」「WSLのインストール方法!」などは”ググる”と沢山情報が出てきます。

例えば、以下の記事など

なので、そのあたりは割愛します。

快適プログラミングのための環境構築

WSLを使って快適なプログラミングをするために、実施したことを説明します。

WSLを使ったプログラミング環境の構築

↑のようにコマンドを叩いていけば、私と同じ環境が構築できますよ(*・ω・)ノ♪

パッケージのアップデート

まず最初はこれをしないとね!

sudo apt update
sudo apt upgrade

以降からは快適にプログラミングをするためにインストールしたものを紹介します。
(ここから本番?)

C++コンパイラなど

GNU C++ compilerなどプログラミングに必須のツールは以下のコマンドで一式手に入ります

sudo apt install build-essential

Python3

最近Pythonもよく使うのでインストール

sudo apt install python3

pip

Pythonパッケージ管理ならpipが楽ですよねー

sudo apt install python-pip

venv

仮想環境を作って管理するが好きなので、venvもインストール

sudo apt-get install python3-venv

以上でインストールは終了!以降からは、さらに自分好みになるように環境を整えていきます。

Visual Studio Codeと連携

エディタにVSCodeを使いたいので、ターミナルをWSL(Ubuntu)に変更します。

VSCodeを起動して以下の手順に従って設定すれば、VSCodeからWSL(Ubuntu)を使えますよ。

ターミナル変更手順

タブの「ファイル」⇒「基本設定」⇒「設定」で”User Setting”を開き、以下のターミナル設定用のコードを編集 or 追記します。

“terminal.integrated.shell.windows”: “C:\\WINDOWS\\System32\\bash.exe”

ターミナル表示手順

タブの「表示」⇒「統合ターミナル」でターミナルを表示できます。
または「Ctrl + @」のショートカットキーでもOK!

VSCodeのターミナルをWSL(Ubuntu)に変更

↑のように、WSL(Ubuntu)のターミナルと同じ表示になれば成功です。

VSCodeのターミナル設定については、以下の記事で丁寧に説明していますので、困ったときは参考にして下さいね。

VSCodeからAnacondaを呼ぶ
【拡張機能未使用】Visual Studio CodeのターミナルからAnacondaを使うこんにちわ!”Visual Studio Code”と”Anaconda”ヘビーユーザーの”はやぶさ”です! 日々”Visual ...

WindowsとWSL(Ubuntu)とのデータ共有

WSL(Ubuntu)を起動すると、デフォルトだと以下の場所にいます。

/home/User

以下のコマンドで移動すると Cドライブに移動できます。

cd ..
cd ..
cd mnt/c

ここまでくれば、WindowsとWSL(Ubuntu)でデータを共有できます。

VSCodeから共有フォルダを作成

VSCodeのターミナルをWSL(Ubuntu)に変更したので、VSCodeから共有フォルダを作成します。

VSCodeのターミナル”WSL(Ubuntu)”はデフォルトだと以下の場所にいます。

/mnt/c/Users/UserName

つまり、移動なしでWindowsとデータ共有できる場所にいます(地味に嬉しい)

どこに共有フォルダを作成しても良いのですが、散らかるのが嫌なので、私は以下の場所を”WSL(Ubuntu)”の作業スペースにしました。

/mnt/c/Users/UserName/Ubuntu

WindowsでGUIから、またはターミナルから以下のコマンドでフォルダを生成できます。

mkdir Ubuntu

フォルダ生成に限らず、WindowsもLinux(Ubuntu)も手軽に使えるのって、端的に言って最高!

仮想環境生成

プロジェクト管理の観点から、初めに仮想環境を作成しておくと便利です。

前準備

今、以下の場所にいるとして…

/mnt/c/Users/UserName/Ubuntu

以下のコマンドで各仮想環境を管理するフォルダを作成し、そこに移動します。

mkdir envs
cd envs

pwdコマンドで場所を確認できます。

pwd
/mnt/c/Users/UserName/Ubuntu/envs

venvで仮想環境を生成

venvがインストール済みなので、以下のコマンドで仮想環境を生成できます。

sudo python3 -m venv <仮想環境名>

今回は”cpp”という仮想環境を生成してみます。

sudo python3 -m venv cpp

任意の仮想環境をアクティブにする

venvで生成した仮想環境(cpp)は以下のツリー構造をしています。

cpp — bin — activate
  |– lib
  |– include
  |– …

binフォルダ内のactivateを起動すると、仮想環境(cpp)をアクティブにできます。

今いる場所次第ですが、仮に以下の場所にいるなら…

/mnt/c/Users/UserName/Ubuntu/envs

以下のコマンドで仮想環境(cpp)をアクティブにできます。

source cpp/bin/activate

↓赤□を見ればどの仮想環境がアクティブなのか?を確認できます。

venvで生成した仮想環境をアクティブにする

任意の仮想環境から抜け出す

以下のコマンドでアクティブ環境を抜け出せます。

deactivate

今回はvenvを使って仮想環境を生成しましたが、Anacondaを使う場合は以下の記事が参考になりますよ。

PCやるハリネズミ
Anacondaで仮想環境を作るときに役立つTips集前回、『Anacondaで仮想環境を作ってC++プログラミングをするまで』という記事を書きました。この記事で紹介した仮想環境の作り方以外...

【補足】仮想環境を生成するメリット

仮想環境を作るメリットについて簡単に説明しておきます。

「普段はあまり使わないけど、今回のプロジェクトでは○○のpythonパッケージが必須!」みたいなときがあります。

その場合、そのプロジェクト専用の仮想環境を作成し、その仮想環境にだけ必要なpythonパッケージをpipでインストールすれば、他の環境を汚さずに済みます。

また、フレームワークやライブラリのバージョンに互換性がなく、バージョンを更新すると動かないソフトもあります。

基本的には最新バージョンを使う方が良いのですが、一時的に古いバージョンで動くソフトを使いたいときがあります。

その場合も、古いバージョン用の仮想環境を作っておけば解決できます。

また、その仮想環境が不要になった場合、簡単に削除できるのも便利です。

つまり、仮想環境を作成するメリットは以下の通りです。

  • 他の環境を汚さない
  • プロジェクト管理が楽になる
  • バージョン管理が楽になる
  • 不要になった仮想環境は簡単に削除できる

まとめ

職業柄C++とPythonでソフトウェア開発をする機会が多いため、今まで何度もC++とPythonの両方が動く環境を構築してきました。

また、WindowsとLinuxの両OSを使う機会も多く、エディタにはVSCodeを愛用しています。

そのため本記事では…

『Windows10とWSL(Ubuntu)とVSCodeで快適なプログラミング環境を構築』する方法を説明しました。

備忘録のつもりで書きましたが、参考になる人もいるかも(?)

好みもあると思いますが、WSLを使えば…

はやぶさ
はやぶさ
WindowsアプリでGUIを使いつつ、Linux(Ubuntu)のターミナルを叩ける!快適!!

と思いました!色々と試してみて、自分好みの快適なプログラミング環境を構築してみて下さいね(*・ω・)ノ♪

はやぶさ
はやぶさ
理系応援ブロガー”はやぶさ”@Cpp_Learningは頑張る理系応援を応援します!

おまけ -仕事道具-

本記事では、快適にプログラミングをするための環境構築について説明しました。

より快適なプログラミング生活を楽しむなら、キーボードなどの仕事道具にも拘ると良いと考えています。

私オススメの仕事道具(キーボード/マウスなど)を以下の記事で紹介してるので、ご参考までに

現役エンジニアおすすめの仕事道具
【仕事効率化】現役エンジニアおすすめの仕事道具(キーボード・文房具など)現役エンジニアの”はやぶさ”が仕事効率UPのために使っている仕事道具(キーボード・マウス・文房具など)を紹介します。自分に合う道具を使って気持ちよく仕事をしましょう!...
LINEスタンプ配信中!

フクロウのLINEスタンプ

当サイトのマスコットキャラクター

「フクロウのくるる」が

LINEスタンプになりました!

勉強で疲れたあなたに癒しをお届け☆

お迎え待ってます(*・ω・)ノ♪

今すぐお迎えする

40個セットがたったの50コインとお得です