Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
146 changes: 63 additions & 83 deletions README_JP.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,60 +2,49 @@

[English version README](./README.md)

opensource COBOL 4JはCOBOLソースコードをJavaソースコードに変換するCOBOLコンパイラです.
opensource COBOL 4JはCOBOLからCに変換するCOBOLコンパイラ["opensource COBOL"](https://github.com/opensourcecobol/opensource-cobol)をもとに開発されています.
"opensource COBOL 4J"は、COBOLソースコードをJavaソースコードに変換するCOBOLコンパイラです。
"opensource COBOL 4J"は、COBOLからCソースコードに変換するCOBOLコンパイラ["opensource COBOL"](https://github.com/opensourcecobol/opensource-cobol)をもとに開発されています。
(実際、このリポジトリには多くの["opensource COBOL"](https://github.com/opensourcecobol/opensource-cobol)のソースファイルが含まれています。)

変更履歴は[CHANGELOG.md](./CHANGELOG.md)を参照してください.
変更履歴は[CHANGELOG.md](./CHANGELOG.md)をご覧ください。

## ライセンス
ランタイムライブラリであるlibcobjはLGPL 3,それ以外のソフトウェアやライブラリはGPL 3の下で配布されています.
ランタイムライブラリであるlibcobjはLGPL 3それ以外のソフトウェアやライブラリはGPL 3の下で配布されています

## 動作環境

opensource COBOL 4J は下記の環境でテストされています.
opensource COBOL 4Jは、下記の環境でテストされています:

* Ubuntu 24.04 と OpenJDK 21
* AlmaLinux 9 と OpenJDK 11
* Amazon Linux 2023 と OpenJDK 21

古いバージョンの動作環境については、[doc/requirements-all.md](./doc/requirements-all.md)をご覧ください.


## インストール
古いバージョンの動作環境については、[doc/requirements-all.md](./doc/requirements-all.md)をご覧ください。

opensource COBOL 4J v1.1.2はUbuntuとAlmaLinuxで動作を確認しています.

## 手動インストール
## インストール(Linux)

### 依存ライブラリのインストール

下記のコマンドを実行する.
下記のコマンドを実行します。

#### Ubuntu 24.04

```
sudo apt-get update
sudo apt-get install -y default-jdk build-essential bison flex gettext texinfo libgmp-dev autoconf
```

#### AlmaLinux 9

```
dnf -y update
dnf install -y java-11-openjdk-devel gcc make bison flex automake autoconf diffutils gettext
```

#### Amazon Linux 2023

```
dnf -y update
dnf install -y java-21-amazon-corretto-devel gcc make bison flex automake autoconf diffutils gettext tar gzip
```

### opensource COBOL 4Jのインストール (Linux)

下記のコマンドを実行する

### opensource COBOL 4Jのインストール
```
curl -L -o opensourcecobol4j-v1.1.2.tar.gz https://github.com/opensourcecobol/opensourcecobol4j/archive/refs/tags/v1.1.2.tar.gz
tar zxvf opensourcecobol4j-v1.1.2.tar.gz
Expand All @@ -66,123 +55,115 @@ sudo make install
```

### $CLASSPATHの設定

/usr/lib/opensourcecobol4j/libcobj.jar を 環境変数$CLASSPATH に追加する.
たとえば下記のコードを実行する。
/usr/lib/opensourcecobol4j/libcobj.jarを環境変数$CLASSPATHに追加します。
例えば、Unix系システムで次のコードを実行します。

```bash
export CLASSPATH="$CLASSPATH:/usr/lib/opensourcecobol4j/libcobj.jar"
```

古いバージョンのインストール方法は、[doc/installation_jp](./doc/installation_jp)をご覧ください.
古いバージョンのインストール方法は、[doc/installation_jp](./doc/installation_jp)をご覧ください

## opensource COBOL 4Jのインストール (Windows)
## インストール (Windows)
### Visual Studioのインストール
Windows版のopensource COBOL 4JはVisual Studioに含まれるCLコンパイラを使用します.
そのため、まずは[Visual Studio](https://visualstudio.microsoft.com/)をインストールしてください.
Windows版のopensource COBOL 4JはVisual Studioに含まれるCLコンパイラを使用します。
そのため、まずは[Visual Studio](https://visualstudio.microsoft.com/)をインストールする必要があります。

### ソリューションファイルのビルド
1. opensource COBOL 4Jのファイル一式をダウンロードする。
2. Visual Studioでwin/opensourcecobol4j.slnを開く。
3. ”Debug”または”Release”モードを選択する。
![alt text](image/readme1.png)
4. ”ビルド” -> ”ソリューションのビルド” を選択する。
![alt text](image/readme2.png)
ビルドが完了すると、`win/x64/Debug`または`win/x64/Release`に"cobj.exe"が作成される。

### Javaファイルのビルド
1. JDKをインストールする.
https://www.oracle.com/java/technologies/downloads/?er=221886#java8-windows
2. PowerShellを開く.
3. libcobjディレクトリに移動し、`.\gradlew shadowJar`を実行する.
1. JDKをインストールする
https://www.oracle.com/java/technologies/downloads/?er=221886#java8-windows
2. PowerShellを開く
3. "libcobj"ディレクトリに移動し、`.\gradlew shadowJar`を実行する
```
cd libcobj
.\gradlew shadowJar
```
これにより、"libcobj.jar"が`libcobj\app\build\libs\`に作成される.
これにより、`libcobj\app\build\libs\`に"libcobj.jar"が作成される。

### ソリューションファイルのビルド
1. opensource COBOL 4Jのファイル一式をダウンロードする.
2. win/opensourcecobol4j.slnをVisual Studioで開く.
3. ”Debug”または”Release”モードを選択する.
![alt text](image/readme1.png)
4. ”ビルド” -> ”ソリューションのビルド” を選択する.
![alt text](image/readme2.png)
ビルドが完了したら、`win/x64/Debug`または`win/x64/Release`に"cobj.exe"が生成される.

### ファイルの配置
1. Debugモードでビルドした場合、win/make-install.ps1の5行目を`\x64\Release\cobj.exe`から`\x64\Debug\cobj.exe`に変更する.
2. PowerShellを開く.
3. ”win”ディレクトリに移動し、make-install.ps1を実行する.
### ファイルを適切な位置に配置
1. Debugモードでビルドした場合、`win/make-install.ps1`の5行目を`\x64\Release\cobj.exe`から`\x64\Debug\cobj.exe`に変更する。
2. PowerShellを開く。
3. ”win”ディレクトリに移動し、`make-install.ps1`を実行する。
```
cd win
.\make-install.ps1
```
* ファイルは下記の場所にそれぞれ配置される.
* ファイルの配置場所を変更したい場合は、make-install.ps1に記載してあるパスを編集する.

* 各ファイルは以下の場所に配置されます。
| ファイル名 | 配置場所 |
|---|---|
| cobj.exe | C:\opensourcecobol4j\bin |
| libcobj.jar | C:\opensourcecobol4j\lib |
| configファイル | C:\opensourcecobol4j\config |

* ファイルの配置場所を変更したい場合は、`make-install.ps1`に記載してあるパスを編集してください。

### 環境変数の設定
1. 環境変数PATHに`C:\opensourcecobol4j\bin`を追加する.
2. 環境変数CLASSPATHに`C:\opensourcecobol4j\lib\libcobj.jar`を追加する.
1. `C:\opensourcecobol4j\bin`を環境変数PATHに追加する。
2. `C:\opensourcecobol4j\lib\libcobj.jar`を環境変数CLASSPATHに追加する。

## Dockerによるインストール

opensource COBOL 4J v1.1.2をインストールしたDockerイメージを利用できます.
## Dockerを使ったインストール
opensource COBOL 4JのDockerコンテナを利用できます。

```bash
docker pull opensourcecobol/opensourcecobol4j:1.1.2
```

コンテナ内で下記のコマンドを実行すると、Hello Worldプログラムをコンパイル&実行できる.
以下のコマンドを実行して、"Hello World"のCOBOLプログラムを実行します。

``` bash
# Move to the sample directory
# サンプルディレクトリに移動
$ cd /root/cobol_sample

# Translate COBOL to Java and compile the Java source file.
# COBOLをJavaに変換し、Javaソースファイルをコンパイル
$ cobj HELLO.cbl

# Run "Hello World"
# "Hello World"を実行
$ java HELLO
HELLO WORLD!
```

## 使い方

コンパイル.
コンパイルします。
```bash
cobj [COBOL source file]
```
(cobjコマンドにより,カレントディレクトリに[PROGRAM-ID].javaと[PROGRAM-ID].classが生成されます.)
(cobjコマンドによりカレントディレクトリに[PROGRAM-ID].javaと[PROGRAM-ID].classが生成されます)

実行.
実行します。
```bash
java [PROGRAM-ID]
```

## ドキュメント

* [ランタイムライブラリ`libcobj.jar`のAPIリファレンス](https://opensourcecobol.github.io/opensourcecobol4j/javadoc/libcobj/index.html)
* [opensource COBOL 4J: Java変換解説](./doc/converted_Java_file_JP.md)

## 実装状況

実装済み

* 基本的なデータ操作 (MOVE, COMPUTE, ... )
* 制御文 (IF, PERFORM, GO TO, ...)
* DISPLAY文, ACCEPT文
実装済み機能:
* 基本的なデータ操作 (MOVE, COMPUTEなど)
* 制御文 (IF, PERFORM, GO TOなど)
* 一部のI/O機能 (DISPLAY, ACCEPTなど)
* CALLによる呼び出し
* SEQUENTIALファイルの入出力機能
* RELATIVEファイルの入出力機能
* INDEXEDファイルの入出力機能
* SORT文
* 組み込み関数 (ACOS, LENGTH, MAX, ...)

## テストのステータス
* 組み込み関数 (ACOS, LENGTH, MAXなど)

### NIST COBOL85 test suite
## NIST85テストの状況
opensource COBOL 4Jは[NIST COBOL85 test suite](https://www.itl.nist.gov/div897/ctg/cobol_form.htm)によりテストされています。

opensource COBOL 4Jは[NIST COBOL85 test suite](https://www.itl.nist.gov/div897/ctg/cobol_fo
rm.htm)によりテストされています.

主要テスト結果
主要テスト結果:

```
------ Directory Information ------- --- Total Tests Information ---
Expand All @@ -202,7 +183,7 @@ RL 32 32 0 0 1827 0 5 0 1832 Relativ
Total 361 361 0 0 8804 0 21 93 8918
```

その他のテストの結果
追加テストの結果:

```
------ directory information ------- --- total tests information ---
Expand All @@ -215,7 +196,7 @@ rw 4 0 4 0 0 0 0 0 0 REPORT
total 21 0 21 0 0 0 0 0 0
```
## cobj-idx
`cobj-idx` コマンドはINDEXEDファイルを扱うためのユーティリティで、opensource COBOL 4Jの一部としてインストールされます.
`cobj-idx`コマンドはINDEXEDファイルを扱うためのユーティリティで、opensource COBOL 4Jをインストールする際に、一緒にインストールされます。

```
cobj-idx - A utility tool to handle an indexed file of opensource COBOL 4J
Expand Down Expand Up @@ -264,7 +245,7 @@ Options:
```

## cobj-api
cobj-apiコマンドを使用することで、`cobj`で生成されたプログラムを呼び出すSpring boot向けのJavaファイルを簡単に生成できます.
`cobj-api`コマンドを使用することで、`cobj`で生成されたプログラムを呼び出すSpring boot向けのJavaファイルを簡単に生成できます

```
Usage: cobj-api [options] <json-file>
Expand All @@ -278,9 +259,8 @@ Options:
-o=<dir>, --output-dir=<dir> Set the output destination of the java file to an arbitrary destination
-v, --version Prints the version of the cobj-api
```
cobj-apiを用いたSpring Bootアプリケーションの作成方法については、[こちら](./doc/cobj-api_SpringBoot_JP.md)を参照してください
cobj-apiを用いたSpring Bootアプリケーションの作成方法については、[こちら](./doc/cobj-api_SpringBoot_JP.md)をご覧ください

## コントリビューㇳ

コントリビュータの一覧は https://github.com/opensourcecobol/opensourcecobol4j/graphs/contributors に掲載されています.
コントリビュータ向けのガイドラインは[CONTRIBUTING_JP.md](./CONTRIBUTING_JP.md)を参照してください.
コントリビュータ向けのガイドラインは[CONTRIBUTING_JP.md](./CONTRIBUTING_JP.md)を参照してください。
コントリビュータの一覧は https://github.com/opensourcecobol/opensourcecobol4j/graphs/contributors に掲載されています。