サイトのロゴ opensource COBOL Programmer’s Guide

前へ/目次/次へ

8.1.7. 重要な環境変数

次の表は、opensource COBOLプログラムのコンパイルで使用できる様々な環境変数を示している。

表8-4-環境変数コンパイラ

環境変数 使い方
COB_CC opensource COBOLで使用するCコンパイラの名前に設定する。
この機能の利用は自己責任である―opensource COBOLビルドが生成されたCコンパイラを常に使用する必要がある。
COB_CFLAGS33 cobcコンパイラからCコンパイラに渡すスイッチに設定する(cobcが指定するスイッチに加えて)。既定値は「-Iprefix/include」で、「prefix」は使用しているopensource COBOLのインストールパスである。
COB_CONFIG_DIR opensource COBOLの「構成」ファイルが保存されているフォルダへのパスに設定する。構成ファイルの使用方法については、8.1.9で説明する。
COB_COPY_DIR プログラムに必要なCOPYモジュールがプログラムと同じディレクトリに保管されていない場合は、この環境変数をCOPYモジュールが含まれているフォルダに設定する(IBMメインフレームプログラマはこれを「SYSLIB」と認識する)。COPYモジュールの使用に関する追加情報については、8.1.8で説明する。
COB_DATE システム日付に任意の日付を「yyyy/mm/dd」の形式で設定する。
COB_IO_ASSUME_REWRITE この環境変数に「Y」を設定することで、I-Oオプションでファイルを開いた時のWRITEをREWRITEに読み替えられるようにする。
COB_LDADD プログラムとリンクする必要のある標準ライブラリが見つけられる場所を指定できる追加のリンカースイッチ(ld)に設定する。既定値は””(null)。
COB_LDFLAGS cobcコンパイラからCコンパイラに渡すリンカ/ローダ(ld)スイッチに設定する(cobcが指定するスイッチに加えて)。既定値は未設定。
COB_LIBS プログラムとリンクする必要のある標準ライブラリが見つけられる場所を指定するリンカースイッチ(ld)に設定する。既定値は「-Lprefix/lib-lcob」で、「prefix」は、使用しているopensource COBOLバイナリが作成されたときに指定されたパスプレフィックスである。
COB_NIBBLE_C_UNSIGNED この環境変数に「Y」を設定することで、字類検査においてPIC 9項目の値に符号ニブル「C」を許容する。
COB_VERBOSE この環境変数に「Y」を設定することで、SORT実行時に出力するメッセージを冗長化することが可能になる。
COBCPY この環境変数は、コンパイラがCOPYモジュールを見つけられる場所を指定する追加手段を提供する(上記のCOB_COPY_DIRも参照)。COPYモジュールの使用に関する追加情報については、8.1.8で説明する。
LD_LIBRARY_PATH 静的にリンクされたサブルーチンライブラリの使用を計画している場合は、この変数を、ライブラリを含むディレクトリへのパスに設定する。
OC_EXTEND_CREATES この環境変数に「yes」を設定することで、EXTENDオプションでファイルを開く時に自動でファイルが生成される。
OC_IO_CREATES この環境変数に「yes」を設定することで、I-Oオプションでファイルを開く時に自動でファイルが生成される。
OC_USERFH この環境変数にCOBOLプログラム名を指定することで、COBOLのファイル処理をユーザ定義のプログラムで実行できるようになる。OPEN, CLOSE, DELETE, READ, REWRITE, START, WRITE, COMMIT, ROLLBACK, UNLOCKの処理がサポートされている。
TMPDIR
TMP
(この順番で確認)
一時ファイルを作成するのに適したディレクトリ/フォルダに設定する。cobcによって作成された中間作業ファイルがここに生成される(不要になると削除される)。通常Windowsシステムでは、ログオン時にTMP環境変数が設定される。別の一時フォルダを使用する場合は、TMPDIRを自分で設定すれことで、TMPに依存する他のWindowsソフトウェアを中断する心配はない。

33 これらのスイッチは、高度なユーザによる特殊な状況での使用のみを目的としているため、使用は推奨していない。opensource COBOLの今後のリリースでは、cobcコマンドからCコンパイラやローダーに切り替えるためのより良い方法が導入される予定である。

ページトップへ