2021-05-25に更新

VSCode+WSL(ssh接続)+CMake+GoogleTestでC++プログラミング環境を構築

以前の記事
VSCode+WSL+CMake+GoogleTestでC++プログラミング環境を構築
で作った環境、なーーんかスマートじゃないなーと思ってたんですが
WSLにssh接続で入るようにしたらしっくりきたので、改めて記事を書きました。
①以外は以前の記事とほぼ同じですが、この記事だけ読んでできるようにしたかったので、ご了承ください。
Windows10のVersionは1803以降でお願いします。それより前だと、WSLのウインドウを開いておいてsshデーモンも起動して・・・とか毎回やらないとssh接続できないらしいです。

①VSCode&WSLでC/C++を使えるようにする

①-1 WSLを使えるようにする

画面左下の窓アイコンを右クリック→Windows Powershell (管理者)を選択。
出てきたウインドウに以下を打ち込んでしばし待ち、指示が出たらPC再起動します。

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
①-2 ubuntuをインストール

Microsoft Storeを開いてubuntuと入力し出てきたUbuntu 18.04 LTSをインストール&起動します。

①-3 ubuntu初期設定、gcc、opensshインストール

インストール完了したら、ユーザー名パスワードを設定後、以下のコマンドで最新に更新、

$ sudo apt update
$ sudo apt upgrade

次にgccなどをインストール、

sudo apt install build-essential

最後にopensshを入れなおします。

sudo apt-get purge openssh-server
sudo apt-get install openssh-server

入れなおす事で、パスワード入力を不要にしたりとかRSA鍵を作ったりとか勝手にやってくれるっぽいです。

①-4 WindowsのVSCodeインストール

vscodeでググった一番上のリンクから「今すぐダウンロード」してインストールしてください。

①-5 VSCodeに拡張機能をインストールしてWSLに接続

「Remote Development」で検索して出てきたやつをインストール
image
すると左側にモニタみたいなアイコンが出るのでクリック
image
表示されたubuntu18.04を選択して右のウインドウに+がついたようなアイコンをクリックでWSLに接続し、VSCode(WSL側)のウインドウがもう一つ表示されます。以降はVSCode起動後この2ポチでWSL環境が開きます。前より簡単ですね。

①-6 VSCode(WSL側)に拡張機能をインストール

①-5の最後で開いたWSL側のVSCodeに以下の拡張機能をインストール
・C/C++
・他日本語などお好みで
ここまでやればC/C++のコーディングとビルドはできるようになります。

②cmakeのインストール

以降の操作は①-3で使ってたウインドウでもできますが、VSCode(WSL側)のターミナル(bash)でも行えます。コピペとかしやすいので後者をおすすめします。

sudo apt-get install cmake

おわり

③GoogleTestのインストール

インストール方法をググると、tar.gzダウンロードしてきてせこせこ解凍したり、makeしたあと生成物をなぜか手動でコピーしてたりと色んなインストール方法が出てきますが、苦労なくできるのは以下です。

cd
git clone https://github.com/google/googletest.git
cd googletest
mkdir build
cd build
cmake ..
sudo make
sudo make install

④C++のコード書く

書いてください。

⑤GoogleTest使ってみたソースのCMakeLists.txt

cmake_minimum_required(VERSION 3.0)
project("hello_gtest")
add_executable(hello_gtest main.cpp)
target_link_libraries(hello_gtest
  PRIVATE
    gtest
    gmock
    pthread)

①②③あたりを上に書いた通りにやっておけば、includepathの指定とか特に何も書かないでも、上のような内容でビルド&実行できると思います。
お疲れさまでした。次の⑥は読まなくていいです。

⑥■■■■■■■■■■

前の記事で作った環境、正直なんか使いにくくてその後二度と自宅でC/C++打たなかったんですが、バチが当たってHDDがぶっ壊れたので、SSDに換装後、今回環境を作り直すにあたって、もっと楽にできるようにしてみました。

ツイッターでシェア
みんなに共有、忘れないようにメモ

uskz

自分のために書いていきます

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント