LIB86K[option] oldlibrary[commands][,[listfile][,[newlibrary]]][;]![]()
optionフィールドに指定できるオプションは/?のみです。
処理対象となるライブラリファイルを指定します。このフィールドを省略することはできません。ライブラリファイルの拡張子が“.LIB”の場合には省略することができます。しかし、ユーザーのライブラリファイル拡張子が“.LIB”以外の場合には、拡張子を省略することはできません。このライブラリファイルにはデフォルトは存在しないため指定されなかった場合には、エラーメッセージを出力します。また、存在しないファイル名を指定した場合には次のプロンプトを表示します。
Library file does not exist. Create? (y/n)
新規ライブラリを作成する場合は、Yを入力します。Y以外を入力すると処理を中断してOSに戻ります。
既存のライブラリファイルにセミコロンを付けただけのものを入力すると、ライブラリの整合性のチェックが行われます。整合性のチェックとは、ライブラリ中のすべてのモジュールが使用できるかどうかのチェックです。もし、エラーが存在する場合には、エラーメッセージを表示されます。
commandsには、+,−,−+,*,−*のようなコマンド記号があり、これらを入力してプログラムの動作指示を行うことができます。指定できるオブジェクトファイル名やモジュール名は、コマンド1つにつき1つ指定して複数の操作を行うことができます。コマンドを省略するとライブラリファイルに対して変更を行いません。
listfileには、ライブラリ中のパブリックシンボルリスト、外部参照シンボルリスト、モジュール名リストを出力するファイルを指定します。省略した場合は、標準出力にデータを表示します。
newlibraryには、出力対象となるライブラリ名を指定します。指定のない場合、処理以前のoldlibraryの拡張子を“.BAK”に変更し、oldlibraryをnewlibraryとしてデータを保存します。
LIB86K HOME-+ROM;![]()
この例では、HOMEというライブラリよりROMというモジュールを削除して、ライブラリの最後にオブジェクトファイル“ROM.OBJ”を追加します。
LIB86K HOME-ROM+ROM;LIB86K HOME+ROM-ROM;
![]()
例1の場合は、HOMEというライブラリよりROMというモジュールを削除してから“ROM.OBJ”というオブジェクトファイルを追加します。しかし、例2の場合は、HOMEに“ROM.OBJ”を追加してからROMモジュールを削除します。したがって、上段の場合ライブラリ内にROMモジュールが残りますが、下段の場合ライブラリ内には残りません。これは、コマンド記号が指定された順序で処理を行っているからです。
LIB86K HOME,LCROSS.PUB![]()
“HOME.LIB”の整合性のチェックを行った後、“LCROSS.PUB”という名前のクロスリファレンスファイルを生成します。