Skip to the content.
English 한국어 日本語 Tiếng Việt

COBOL サンプル

https://github.com/bobhyun/TS-ANPR/tree/main/examples/COBOL/anpr

このサンプルは、C ラッパーライブラリを使用して COBOL アプリケーションに TS-ANPR エンジンを統合する方法を示します。

アーキテクチャ

COBOL サンプルは階層化されたアーキテクチャを使用します:

COBOLアプリケーション (anpr.cbl)
         ↓
Cラッパーライブラリ (libtsanpr_cobol.so/.dll)
         ↓
TS-ANPRエンジン (libtsanpr.so/tsanpr.dll)

1. エンジンファイルのコピー

【参考】 このサンプルでは、他のサンプルとエンジンファイルを共有するために examples/bin/ ディレクトリに展開しますが、実際の配布時には通常、アプリケーションの実行ファイルがあるディレクトリにエンジンファイルをコピーします。

2. ビルドと実行

2.1 Windows

  1. GnuCOBOL のインストール

    • GnuCOBOL for Windows をダウンロードしてインストール
    • または SuperBOL 経由でインストール(推奨)
    • GnuCOBOL bin ディレクトリを PATH に追加
  2. GCC のインストール

    • C ラッパーのビルドには GCC が必要です
    • SuperBOL をインストールした場合、MinGW64 GCC が含まれています
    • それ以外の場合は、MinGW-w64 をインストール
  3. ビルド方法

    compile.bat
    

    または Make を使用:

    make
    
  4. 実行方法

    run.bat
    

    または Make を使用:

    make run
    

2.2 Linux

  1. 依存関係のインストール

    • Debian / Ubuntu
      sudo apt-get update
      sudo apt-get install gnucobol gcc
      
    • Oracle Linux / RHEL / CentOS
      sudo yum install gnucobol gcc
      
    • Fedora
      sudo dnf install gnucobol gcc
      
  2. ビルド方法

    chmod +x compile.sh
    ./compile.sh
    

    または Make を使用:

    make
    
  3. 実行方法

    chmod +x run.sh
    ./run.sh
    

    または Make を使用:

    make run
    

COBOL プログラム (src/cobol/anpr.cbl)

以下の機能を実演します:

すべての機能は他の言語(C、Python など)のサンプルと同等です。

パフォーマンスに関する注意事項

WSL でより良いパフォーマンスを得るには、プロジェクト全体を WSL ネイティブファイルシステム(例:~/)にコピーしてください。

トラブルシューティング

Linux: “libcob: error: module not found”

このエラーは、GnuCOBOL が C ラッパーライブラリを見つけられない場合に発生します。実行スクリプトは LD_PRELOAD を使用してライブラリを強制的にロードします。

解決方法: バイナリを直接実行せず、常に run.sh または make run を使用してください。

Windows: DLL not found エラー

以下を確認してください:

  1. コンパイル後に bin/tsanpr_cobol.dll が存在するか
  2. COB_LIBRARY_PATH を設定する run.bat を通して実行しているか

ライセンス

このサンプルコードは MIT ライセンスの下で配布されています。