Windows C言語開発環境 構築手順書 (Zed + MSYS2 Clang)

1. 概要

本書は、Windows環境において、超高速エディタ ZedClang/LLVM ツールチェーンを組み合わせた、モダンかつ軽量なC言語開発環境を構築するための手順書です。
従来の重厚なIDE(Visual Studio等)を避け、「エディタの軽快さ」「コンパイラの厳密なエラーチェック」を両立させることを目的としています。また、CMakeと .clangd 設定を活用することで、プロジェクトルートを汚さず、Git管理が容易な構成を目指します。

2. ツールチェーンのインストール

  1. MSYS2のインストール: msys2.org からインストーラーを入手し、インストールします。
  2. パッケージ導入: スタートメニューから 「MSYS2 CLANG64」 ターミナルを起動し、以下を実行します。
    Bash pacman -S mingw-w64-clang-x86_64-clang \ mingw-w64-clang-x86_64-clang-tools-extra \ mingw-w64-clang-x86_64-cmake \ mingw-w64-clang-x86_64-ninja \ mingw-w64-clang-x86_64-lldb
    • clang-tools-extra: 補完エンジン clangd を含みます。
    • lldb: Zedでのデバッグに使用するデバッガです。
  3. 環境変数の設定: システム環境変数 PathC:\msys64\clang64\bin を追加します。

3. プロジェクトの設定ファイル

3.1 CMakeLists.txt

プロジェクトのルートに配置します。LSP用の情報を自動出力する設定を含めます。
CMake

# CMakeの最小バージョンを指定
cmake_minimum_required(VERSION 3.10)
# プロジェクト名と使用言語を設定
project(MyProject C)

# C言語の標準規格を指定 (例: C11)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)

# LSP(補完)のためにコンパイル情報を出力
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

# 実行ファイルの生成設定
add_executable(app main.c)

3.2 .clangd (LSP補完設定)

build/ フォルダ内の情報をZedに認識させます。これにより、ルートにリンクを貼る必要がなくなります。
YAML

CompileFlags:
  CompilationDatabase: build/

3.3 .zed/tasks.json (タスク定義)

コマンドパレット(Ctrl+Shift+P > task: spawn or Alt+Shitf+R)から実行可能です。
JSON

[
  {
    "label": "CMake: Configure",
    "command": "cmake",
    "args": ["-B", "build", "-G", "Ninja", "-DCMAKE_C_COMPILER=clang", "-DCMAKE_BUILD_TYPE=Debug"],
    "use_new_terminal": true
  }
]

3.4 .zed/debug.json (デバッグ設定)

Zed公式の形式に準拠。デバッグ開始前に自動でビルドを実行します。
JSON

[
  {
    "label": "Debug My App",
    "build": {
      "command": "cmake",
      "args": ["--build", "build"],
      "cwd": "$ZED_WORKTREE_ROOT"
    },
    "program": "$ZED_WORKTREE_ROOT/build/app.exe",
    "request": "launch",
    "adapter": "CodeLLDB"
  }
]

4. 開発ワークフロー

ステップ1:初回セットアップ

ターミナル(PowerShell等)で一度だけ実行し、ビルド環境を生成します。
Bash

cmake -B build -G "Ninja" -DCMAKE_C_COMPILER=clang -DCMAKE_BUILD_TYPE=Debug

ステップ2:コーディングと補完

Zedでプロジェクトを開きます。.clangd ファイルの効果により、標準ライブラリや自作ヘッダーの補完・エラーチェックが即座に有効になります。

ステップ3:デバッグ実行

  • ブレークポイントの設定: 行番号の左側をクリックします。
  • 実行:F5キー を押します(または Ctrl + Shift + D から選択)。
    • 自動的に cmake --build build が走り、デバッグが開始されます。

5. Git管理(.gitignore)

ビルド成果物がリポジトリに混入しないよう、以下の設定を推奨します。
Plaintext

build/
.zed/

完成後のフォルダ構成

Plaintext

my-project/
├── .git/               # Gitデータ
├── .gitignore          # [Git管理] build/ を除外
├── .clangd             # [Git管理] LSP参照先をbuild/に指定
├── .zed/               # [Git管理] Zed専用設定フォルダ
│   ├── tasks.json      # [Git管理] 構成・ビルド用タスク
│   └── debug.json      # [Git管理] デバッグ定義 (F5用)
├── CMakeLists.txt      # [Git管理] ビルド設定
├── main.c              # [Git管理] ソースコード
└── build/              # [Git除外] ビルド成果物 (CMakeにより生成)
    ├── compile_commands.json  # LSPが参照する実体
    └── app.exe                # デバッグ対象のバイナリ

コメント

タイトルとURLをコピーしました