これまで9回にわたり、Windows 10でC言語開発を行うための環境をセットアップする方法を紹介してきた。どのようなツールがなぜ必要なのか、基本情報を一通り説明してきたつもりだ。実際には、これまで取り上げてきた作業は一気に行う。そこで、後から読み返した時に作業がしやすいように、今回は一旦開発環境をセットアップする方法をまとめておく。作業をする際の参考にしてもらえれば幸いだ。

Wingetをインストール

開発環境をセットアップするためにWinget (Windows Package Manager)を用意する。将来的にはデフォルトで使えるようになる見通しだが、本稿執筆時点では手動でセットアップが必要。

Microsoft Storeから「アプリインストーラー」をインストールする。

  • Microsoft Storeから「アプリインストーラー」をインストール

    Microsoft Storeから「アプリインストーラー」をインストール

GitHub.comのWinget (Windows Package Manager)から最新版をダウンロードしてきて、インストールする。

  • GitHub.comのWinget (Windows Package Manager)から最新版をダウンロード

    GitHub.comのWinget (Windows Package Manager)から最新版をダウンロード

  • ダウンロードしたファイルをインストール

    ダウンロードしたファイルをインストール

wingetというコマンドが実行できるようになっていることを確認する。

  • wingetコマンドが動作することを確認

    wingetコマンドが動作することを確認

開発ソフトウェアのインストールとセットアップ

C言語開発用に次のソフトウェアを使用する。

  1. Windows Terminal
  2. PowerShell
  3. Visual Studio Build Tools 2019
  4. Python
  5. LLVM
  6. Visual Studio Code
  7. Git

次のコマンドでソフトウェアをインストールする。

winget install "Windows Terminal"
winget install PowerShell
winget install "Visual Studio Build Tools 2019"
winget install Python.Python.3
winget install LLVM
winget install "Visual Studio Code"
winget install Git.Git

パッケージ名(ID)はしばしば変わっている。上記の方法でインストールできない場合、「winget search キーワード」で対象となるパッケージ名(ID)を探してインストールする。

この方法では、Visual Studio Build Tools 2019はインストーラのみがインストールされる。次のように操作して開発用の実態をインストールする。

  • 設定アプリケーション:「アプリ」→「アプリと機能」→「Visual Studio Build Tools 2019」→「変更」を選択

    設定アプリケーション:「アプリ」→「アプリと機能」→「Visual Studio Build Tools 2019」→「変更」を選択

  • 「C++によるデスクトップ開発」にチェックを入れ、「変更」を選択

    「C++によるデスクトップ開発」にチェックを入れ、「変更」を選択

  • インストールが完了したら一旦システムを再起動

    インストールが完了したら一旦システムを再起動

環境変数PATHにLLVMのバイナリパスを追加して、コンパイラを使用できるようにする。

  • システムのプロパティ:「環境変数…」を選択

    システムのプロパティ:「環境変数…」を選択

  • 変数Pathを選択して「編集」をクリック

    変数Pathを選択して「編集」をクリック

  • 「C:\Program Files\LLVM\bin」を追加

    「C:\Program Files\LLVM\bin」を追加

上記と同じ要領で、環境変数PATHにGitのバイナリパス(C:\Program Files\Git\bin)を追加してgitコマンドを使用できるようにする。

Visual Studio Codeを起動して、「CodeLLDBエクステンション」をインストールする。ビルドおよびデバッグ用の設定ファイルとしてプロジェクトごとに次のファイルを設定する。

ビルド用 - tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Clang",
            "type": "process",
            "command": "clang.exe",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}.exe"
            ],
            "problemMatcher": [],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

デバッグ用 - launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lldb",
            "request": "launch",
            "name": "Debug",
            "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
            "args": [],
            "cwd": "${workspaceFolder}"
        }
    ]
}

Visual Studio CodeでC言語ソースコードファイルのビルドおよびデバッグができることを確認する。

  • Visual Studio CodeでCソースコードファイルのビルドとデバッグを確認

    Visual Studio CodeでCソースコードファイルのビルドとデバッグを確認

GitHub.comとGitのセットアップ

GitHub」のアカウントを作成する。

Windows 10でOpenSSHを有効化する。

  • 設定アプリケーション:「アプリ」→「オプション機能」を選択

    設定アプリケーション:「アプリ」→「オプション機能」を選択

  • 「機能の追加」を選択

    「機能の追加」を選択

  • 「OpenSSHクライアント」を選択して「インストール」をクリック

    「OpenSSHクライアント」を選択して「インストール」をクリック

  • OpenSSHのインストールを確認

    OpenSSHのインストールを確認

OpenSSHをインストールしたら、ssh-keygenコマンドを使ってパスフレーズなしの認証鍵(公開鍵・秘密鍵)を生成する。すでに認証鍵があるなら生成は不要。

認証鍵(公開鍵・秘密鍵)を生成

ssh-keygen.exe

生成した認証鍵のうち、公開鍵をGitHub.comに追加する(GitHub.comにサインインして、メニューから「Settings」→「SSH and GPG keys」→「New SSH key」を選択。わかりやすいタイトルを入力し、Keyに公開鍵を貼り付けてから「Add SSH key」を押す)。

gitコマンドを実行して、GitHub.comを使用するユーザー名と電子メールアドレスを設定する。

GitHub.comを使用するユーザー名と電子メールアドレスを設定

git config --global user.email "メールアドレス"
git config --global user.name "ユーザー名"

gitコマンドで、GitHub.comに登録されているリポジトリをcloneできることなどを確認する。

コマンド 内容
git clone リポジトリ名 リポジトリをクローン
git pull リポジトリ名 リポジトリをアップデート
git add ファイル 次のプッシュでファイルをリポジトリへ追加または変更を反映する対象として扱うように指定
git commit -m 'メッセージ' コミットメッセージを設定
git push リポジトリへプッシュ

開発環境のセットアップ方法は整理しておく

開発者のPCは煩雑になりがちだ。複数のツールのインストールやアンインストールを行ったり、設定を変更したりしているうちに、どの状態が最新なのかわからなくなってくる。開発環境を再現できるようにするには、最初のセットアップ方法とそれ以降に行った変更などは整理しておくとよい。それこそ、GitHub.comにセットアップ方法を書き留めておいてもよいだろう。

共同開発することになれば、開発環境もメンバー間で再現する必要が出てくる。こんな感じでセットアップ方法を文書化しておくと、情報共有が簡単になる。