1
0

More than 3 years have passed since last update.

COBOLをとにかく動かしたい(AWS、opensourceCOBOL)

Last updated at Posted at 2020-04-19

概要

こんにちは。とあるIT企業の社員です。
今回は、あるイベントをきっかけに、
とにかくCOBOLプログラムを動かしたい、と思い、やってみました。。

AWSのLinux環境でCOBOL実行環境を導入し、以下のサンプルプログラム(HelloKazuoji.cbl)の動作を確認しました。
(簡単なサンプルを動かしたり、COBOL基礎の勉強できるくらいの簡単な環境です。)

記事を書くを目的は以下であり、正しいかどうかは保証しません。
1. 自分自身の理解
2. 自分自身の達成感
3. 自分自身の備忘
4. 同じ目的をもつ方へのTips

HelloKazuoji.cbl
       IDENTIFICATION                   DIVISION.
       PROGRAM-ID.                      hellokazuoji.
      **************
       ENVIRONMENT                      DIVISION.
      **************
       DATA                             DIVISION.
      **************
       PROCEDURE                        DIVISION.
       MAIN.
          DISPLAY "Hello Kazuojisan!"  UPON CONSOLE.
          STOP RUN.

環境

  • MacOS(local)
  • Amazon Linux2(remote)
  • opensourceCOBOL

Linux環境準備

AWSでAmazon Linux2のECインスタンスを作成します。
基本的にデフォルトで作成します。(用途に応じてお好みで。)
作成後はElastic IPアドレスを割り当てて、以下でアクセスします。

  • key-pairファイルへ権限付与
$ chmod 600 XXXXX.pem
  • sshでLinux環境へアクセス
$ ssh -i {XXXXX.pemのPATH} ec2-user@{IP ADDRESS}

前提環境準備

COBOL環境導入の前にyumで以下のモジュールをインストールします。
こちらをインストールをしないとinstallは上手くいきません。

  • gcc
$ sudo yum install -y gcc
  • ncurses-devel
$ sudo yum install -y ncurses-devel
  • gmp-devel
$ sudo yum install -y gmp-devel

COBOL実行環境導入

COBOL実行環境としてopensourceCOBOLを導入します。

  • opensorceCOBOLファイルの取得
$ sudo wget -O opensource-cobol-1.5.2J-utf8.tar.gz ‘https://www.osscons.jp/osscobol/files?action=cabinet_action_main_download&block_id=414&room_id=21&cabinet_id=11&file_id=406&upload_id=911’
  • .tar.gzファイルの展開
$ sudo tar -zxvf opensource-cobol-1.5.2J-utf8.tar.gz
  • vbisamインストール
$ cd opensource-cobol-1.5.2J-utf8/vbisam
$ sudo sh ./configure
$ sudo make
$ sudo make install
  • opensourceCOBOLインストール
(vbisamインストールからそのままコマンドを打つ想定です。)
$ cd ..
$ sudo sh ./configure --with-vbisam
$ sudo make
$ sudo make install

動作確認テスト

冒頭で記載したサンプルプログラムで動作を確認します。

  • scpで.cblファイルをローカルから転送
$ scp -i XXXXX.pem  hellokazuoji.cbl ec2-user@{IP_ADDRESS}:{DIR_PATH}
  • コンパイル・実行
$ cobc hellokazuoji.cbl
$ cobcrun hellokazuoji
  • 動作結果
Hello Kazuojisan!

終わりに

おそらく完全な導入ではないですが、
構文の学習くらいはできる環境はできました。
何かあればコメントください。

参考リンク

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0