GnuCOBOL + VSCode でCOBOL学習環境を構築しよう!

スポンサーリンク
COBOL

COBOL学習を始めるための代表的な方法として、「GnuCOBOL + VSCode」によるローカル開発環境の構築がある。無料かつ軽量で、個人学習にも最適である。

以下、ステップバイステップでご紹介する。

必要なもの

ツール 説明
GnuCOBOL無料で使えるCOBOLコンパイラ(オープンソース)
Visual Studio Code(VSCode)無料のソースコードエディタ(プラグインが豊富)
拡張機能「COBOL Language Support」VSCodeでCOBOLコードの色分け・補完などを提供

(ステップ1)GnuCOBOLのインストール

(1)Windowsでの構築手順(MSYS2 + GnuCOBOL)

① MSYS2 のインストール
  • 公式サイトから MSYS2 インストーラをダウンロードする。(重要
    https://www.msys2.org/
  • Nortonなどのウイルス対策ソフトが MSYS2(またはそのインストーラ)をウイルスと誤検出(誤検知) してインストールをブロックするケースが、報告されている。これは、MSYS2がUNIXライクなシェルやパッケージ管理機能(pacman)を備えており、一部の挙動が「危険な動作」に類似していると判定されるためである。
【前提】MSYS2は公式サイトから入手しているかをもう一度確認しよう

公式サイト以外のミラーサイトや外部のダウンロードサイトは絶対に使用しないように注意しよう。

(参考)Nortonによる誤検出への対策(手順)

Nortonに除外登録する(推奨)
ステップ1
 インストーラを実行する前に除外登録する

  1. Norton360を開く
  2. 「設定」→「ウイルス対策」を選択
  3. 「除外」タブを開く
  4. 「追加する」をクリックする
  5. msys2-x86_64-xxxx.exe(インストーラ)又は、C:\msys64\(インストール先フォルダ)を追加する。

ステップ2
 インストール後にMSYS2全体を除外リストに追加する。

  1. C:\msys64\ を「除外」に追加する。
  2. pacman.exe や bash.exe なども除外対象として指定すると、pacmanによるパッケージ更新時のブロックを回避できる。

(補足)Nortonによる誤検出の理由

検出されがちなファイル理由
pacman.exe自動で大量のパッケージをダウンロード・更新するため、マルウェアに似た挙動とみなされることがある
bash.exe, sh.exeシェルスクリプト実行により、不正コードを実行するリスクがあると誤検出されやすい
msys2-installer.exe署名されていないバージョンなどが、Nortonのヒューリスティック検出に引っかかることがある
  • 「ふるまい検知(ヒューリスティック検出)」とは、検索対象のプログラムの動作をエミュレートして解析し、「ルール」と合致する動作をするプログラムを1対多で不正プログラムの疑いありと判定する検出方法のこと。「ルール」は不正プログラムの活動を分析して作成される。(トレンドマイクロ社のWebサイトより)
  • どうしても不安が強い場合は、WSL環境や仮想マシン上のLinuxで実行することを考えよう。
  1. MSYS2 インストール後、MSYS2 を起動し、以下の順に実行する。
pacman -Syu              # システムとパッケージマネージャの更新

※MSYS2が落ちれば、再起動する。(C:\msys64\ msys2.exe)

pacman -Su               # 残りの更新を完了
② GnuCOBOLのインストール(MSYS2のターミナル内で)
pacman -S mingw-w64-x86_64-gnucobol
③ パス設定(VSCodeやターミナルから直接使いたい場合)

C:\msys64\mingw64\bin を Windows の「環境変数 → PATH」に追加する。

環境変数の設定画面の表示方法(Windows 11 Home(24H2)の場合)
1.「スタート」→「設定」
2.「システム」→「バージョン情報」→「システムの詳細設定」
3.「システムのプロパティ」画面が開く
4.「環境変数」ボタンをクリック

(2) Linux(Ubuntu)のGnuCOBOL構築手順(gnucobol4 )

① パッケージ更新とアップグレード(最新版反映)

sudo apt update
sudo apt upgrade -y

② GnuCOBOL(gnucobol4)のインストール

sudo apt install gnucobol4

③ インストール確認

cobc -v

# 出力例:

cobc (GnuCOBOL) 4.0-early-dev.0
Built     Mar 31 2024 06:15:26 Packaged  Jun 06 2020 20:56:36 UTC
C version "13.2.0"
loading standard configuration file 'default.conf'
cobc: error: no input files

(3) macOSのGnuCOBOL環境構築

1. コマンドライン・デベロッパー・ツールのインストール

これは Apple が提供する最小限の開発環境で、Xcode をインストールしなくても C コンパイラやビルドツールが使えるようになる。

①ターミナルで以下を実行する

xcode-select --install

②ポップアップが表示されたら「インストール」を選択する

これで /Library/Developer/CommandLineTools に基本的な開発ツール(gcc, make, clang など)が導入される。


2. Homebrewの導入(GnuCOBOL用)

コマンドラインツールには COBOL コンパイラは含まれていないため、GnuCOBOL を導入するには Homebrew を併用する。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

完了後:インストール確認

brew --version
Homebrew 4.5.12
Homebrew/homebrew-core (git revision 2bd09bf831a; last commit 2025-07-25)

3. GnuCOBOL のインストール(Homebrew経由)

brew install gnu-cobol

  完了後:インストール確認

cobc -v

出力例:

cobc (GnuCOBOL) 3.2.0
Built     Jul 25 2025 14:17:18 Packaged  Jul 28 2023 17:02:56 UTC
C version "Apple LLVM 13.0.0 (clang-1300.0.29.30)"
loading standard configuration file 'default.conf'
cobc: error: no input files

(補足)なぜコマンドラインツールを先に入れるのか?

  • brew install 時に C コンパイラ(clang)が必要なパッケージが多い。
  • gnu-cobol も内部的には C 言語への変換 → コンパイルを行うため、gcc や make が必要となる。

これでコマンドラインで以下を自由に使えるようになる。

  • cobc(COBOLのコンパイル)
  • make(ビルド自動化)
  • gcc / clang(C言語関連のサポート)

【ステップ2】VSCodeのインストール

1. 公式サイトからインストーラをダウンロードする。

2. インストール後、起動する。

【ステップ3】VSCodeにCOBOL拡張機能を追加

1. 左の拡張機能アイコン(四角形)をクリックする。
2. `COBOL` で検索
3. 「COBOL Source editing for Visual Studio Code」をインストール

【ステップ4】COBOLファイルの作成と実行

1. COBOLファイル作成(ファイル名:hello.cob)

       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.
       PROCEDURE DIVISION.
           DISPLAY "HELLO, WORLD".
           STOP RUN.

2. ターミナルでコンパイル&実行

cobc -x hello.cob
./hello

「HELLO, WORLD」と表示されれば、成功である。

ところで、Windows11のVSCodeで、コンパイルしようとすると、

configuration error:
/mingw64/share/gnucobol/config\default.conf: No such file or directory

とエラーメッセージが出る場合がある。

PowerShellの場合には

$env:COB_CONFIG_DIR = "C:\msys64\mingw64\share\gnucobol\config"
$env:PATH = "C:\msys64\mingw64\bin;" + $env:PATH

と入力する。

GnuCOBOL を MSYS2 経由でインストールしていても、Windows のコマンドラインでは MSYS2 の Unix パス構成が使えないため起こる現象である。

hello> cobc -v
cobc (GnuCOBOL) 3.2.0
Built     Jul 20 2025 20:49:01  Packaged  Jul 28 2023 17:02:56 UTC      
C version (MinGW) "15.1.0"
loading standard configuration file 'default.conf'
cobc: error: no input files

と表示されればOKである。

【補足】フォルダ構成の例(学習用)

cobol-study/
├── hello.cob
├── sample1.cob
└── sample2.cob

VSCodeでこのフォルダを開けば、ファイルの管理・編集が楽になる。

学習を進めるポイント

学習対象内容例
文法‘DIVISION`, `DISPLAY`, `IF`, `PERFORM`, `ACCEPT` など
ファイル処理`OPEN`, `READ`, `WRITE`, `CLOSE`    
画面・帳票出力DISPLAYレイアウトの工夫
実務寄りの構造データ定義(`DATA DIVISION`)と業務フローの関係 

おすすめ練習課題(初心者向け)

1. 電卓プログラム(加減乗除)
2. COBOLによるCSVファイル読み書きプログラム(GnuCOBOL対応)
3. 銀行口座管理の模擬プログラム(顧客データを読み取って処理)

むすび

項目 内容
難易度★★☆☆☆(構築はやや中級だが、学習は平易)
コスト 完全無料
向いている人COBOL未経験者、独学希望者、金融系・行政系業務志望者

コメント

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