ceebldtx - メッセージ・ソース・ファイルをアセンブラー・ソース・ファイルに変換する

形式

ceebldtx

[-C csect_name][-I secondary_file_name]
[-P] [-S] [-c class] [-d APOST | ' | QUOTE | "]
[-l BAL | C | COBOL | FORTRAN | PLI] [-s id]
in_file out_file

制約事項: ceebldtx ユーティリティーは、 z/OS® UNIX ファイルでのみ機能します。MVS™ データ・セットには適用できません。

説明

ceebldtx ユーティリティーは、メッセージ・ソース・ファイルからいくつかのファイルを作成します。作成されたアセンブラー・ソース・ファイルは、アセンブルしてオブジェクト (テキスト) ファイルにすることができ、リンク・エディットして MVS ロード・ライブラリー内のモジュールにすることができます。 モジュールの名前をメッセージ・モジュール・テーブルに入れると、 Language Environment® メッセージ・サービスでメッセージに動的にアクセスできます。メッセージ・モジュール・テーブルの作成について詳しくは、「Language Environment プログラミング・ガイド」の『メッセージ・モジュール・テーブルの作成』を参照してください。

ceebldtx ユーティリティーでは、オプションとして 2 次入力ファイル (COPY または INCLUDE) が作成されます。これらのファイルには、メッセージ・ソース・ファイル内の各メッセージに関連した条件トークンの宣言が入っています。プログラムで 2 次入力ファイルを使用した場合は、条件トークンを使用してメッセージ・テーブルのメッセージを参照できます。:msgname. タグは、条件トークンのシンボル名を示します。

メッセージ・ソース・ファイルの作成方法およびその他の対応する情報については、「 z/OS Language Environment プログラミング・ガイド」で『メッセージの使用および処理』に関するトピックを参照してください。

オペランド

in_file
メッセージ・ソースが入っているファイルの名前。
out_file
結果としてのアセンブラー・ソース・ファイルの名前。このファイルは、メッセージ、挿入、およびその他の項目を含んでおり、高水準アセンブラーへの入力に適しています。拡張子は、存在しない場合、「.s」が想定されます。

オプション

-C csect_name
このオプションは、CSECT 名を明示的に指定するために使用されます。大文字の CSECT 名が使用されます。デフォルトでは、CSECT 名は出力ファイルのベース名です。
-I secondary_file_name
-I (大文字の i) オプションは、-l (小文字の L) オプションで指定された言語で生成された 2 次入力ファイルの名前を提供します。指定された secondary_file_name の中に接尾部が存在しない場合、拡張子は、C の場合には「.h」、Fortran の場合は「.fortran」、それ以外のすべての場合は「.copy」になります。
-P
このオプションは、生成されるファイルがディレクトリーに存在し、プロローグを含んでいる場合に、以前のプロローグを保存するために使用されます。デフォルトでは、以前のプロローグは再利用されません。
-S
このオプションは、生成されるファイル内にシーケンス番号を生成するよう指示するために使用されます。デフォルトでは、シーケンス番号は生成されません。
-c class
このオプションは、:msgclass. のデフォルト値を指定します (このタグがコーディングされなかった場合)。
-d APOST | ' | QUOTE | "
このオプションは、どの COBOL 区切り文字を使用するかを指定し、-l (小文字の L) COBOL オプションと組み合わせて使用されます。デフォルトでは、APOST が区切り文字として使用されます。
ヒント: 引用符は、シェルのメタキャラクターとして扱われないようにするために、エスケープ記号を付けてください。以下に例を示します。
ceebldtx -l COBOL -I secondary_file_name -d ¥' in_file out_file 
ceebldtx -l COBOL -I secondary_file_name -d ¥" in_file out_file 
ceebldtx -l COBOL -I secondary_file_name -d QUOTE in_file out_file
-l BAL | C | COBOL | FORTRAN | PLI
-l (小文字の L) オプションは、2 次入力ファイルの生成に使用する言語を指定するために、I secondary_file_name オプションと組み合わせて使用されます。そのファイルには、メッセージ・ソース・ファイル内の各メッセージに関連した条件トークンの宣言が格納されます。言語は、小文字および大文字で指定できます。 C370 もサポートされます。
-s id
このオプションは、:msgsubid. のデフォルト値を指定します (このタグがコーディングされなかった場合)。

ceebldtx -l PLI -I exmplcop example exmplasm
ここで、in_fileexampleout_fileexmplasm.s,、PL/I secondary_file_nameexmplcop.copy です。
out_file が生成された後、高水準アセンブラーを使用して out_file をアセンブルし、オブジェクト・ファイルにすることができます。
as exmplasm.s
また、バインダーを使用してリンク・エディットし、MVS ロード・ライブラリーにすることができます。
ld -o "//mylib(exmplasm)" -e// -u//exmplasm exmplasm.o
規則: CSECT 名が 8 文字を超える場合、1 次出力ファイルをアセンブルするには、高水準アセンブラーの GOFF オプションを使用する必要があります。

終了値

-1
Rexx がストレージ不足のために実行を終了しました。(「z/OS TSO/E メッセージ」の IRX0005I を参照してください。)

以下のいずれかを試してみてください。

  1. システム上で使用可能な仮想ストレージ・スペースを増やします。
  2. スクリプト in_file を複数のファイルに分割し、分割に合わせてメッセージ・モジュール・テーブルを調整します。
0
正常終了。
5
ファイル ssssssss の読み取りでエラー。
6
ファイル ssssssss の消去でエラー。
7
ファイル ssssssss の書き込みでエラー。
8
ファイル名 ssssssss の不良。ファイル名の末尾に スラッシュを使用することはできません。
9
オプション x には引数が必要です。
10
無効なオプション = x。有効なオプションは CIPScdls です。
11
データ・セット名 ssssssss の不良。
20
CSECT 名 ssssssss が 63 文字を超えています。
21
CSECT 名 ssssssss が、英字、$、#、@、または下線 (_) で始まっていません。
28
ssssssss SCRIPT が、アクセスされたディスクにありませんでした。
40
メッセージ nnnn の行 nnn でエラー。mmmm より大きい数値を挿入してください。
44
nnn でエラー。指定されたスクリプト・ファイルで重複する :FACID. タグが検出されました。
48
指定されたスクリプト・ファイル内に :FACID. タグがありません。
52
nnn でエラー。メッセージ番号 nnnnmmmm から mmmm までの範囲にありません。
56
メッセージ nnnn の行 nnn で、16 進数字の数が 2 で割り切れません。
60
メッセージ nnnn の行 nnn で、16 進数字が無効です。
64
メッセージ nnnn の行 nnn で、DBCS バイトの数が 2 で割り切れません。
68
PLAS out_file 名はメッセージ機能 ID pppp より長くなければなりません。
72
nnn のメッセージ機能 ID pppp が 4 文字を超えています。
76
nnn のメッセージ・クラスが、有効なメッセージ・クラス・タイプ IWESCFA ではありませんでした。
80
nnn でタグを認識できません。
84
nnn で、最初のタグが :FACID. タグではありませんでした。
88
nnn で、予期しないタグが検出されました。
92
nnn で、重複するタグ ttt が検出されました。
96
指定された SCRIPT ファイルに :MSGNO. タグが入っていません。
98
:MSGCLASS. (または :MSGCL.) タグがメッセージ nnnn にありません。
100
nnn で、挿入番号が指定されなかったか 1 未満でした。
104
nnn で、メッセージ subid が mmmm から mmmmまでの範囲にありませんでした。
108
既存の 2 次ファイル ssssssss が検出されましたが、A ディスク上にありませんでした。
112
現行 ADDRESS 環境が CMS、TSO/E、z/OS UNIX のいずれでもありません。
nnn
未定義のエラー番号 nnn が発行されました。サービス担当員にお問い合わせください。