Benutzereigene Module können nur statisch und nicht dynamisch (d.h. zum Ablaufzeitpunkt) eingebunden werden. Programme, die „unresolved externals“ auf Benutzermodule enthalten, können in der POSIX-Shell nicht geladen werden.
Eingabequellen für den Binder können sein:
vom Compiler erzeugte Objektdateien („.o“-Dateien)
mit dem Dienstprogramm
ar
erstellte Bibliotheken („.a“-Dateien)LLMs, die mit dem POSIX-Kommando
bs2cp
aus PLAM-Bibliotheken in POSIX-Objektdateien kopiert wurden (siehe "Einführungsbeispiele“). Dies können LLMs sein, die in BS2000-Umgebung (SDF) direkt von einem Compiler erzeugt wurden oder Objektmodule, die mit dem BINDER in ein LLM geschrieben wurden.LLMs und Objektmodule, die in BS2000-PLAM-Bibliotheken stehen. Die PLAM-Bibliotheken müssen dazu mit den Umgebungsvariablen BLSLIBnn zugewiesen werden (siehe Option
-l BLSLIB
, "Binder-Optionen").
Die aus PLAM-Bibliotheken stammenden Module können von jedem ILCS-fähigen BS2000-Compiler erzeugte Module sein (z.B. C/C++, COBOL85, COBOL2000, ASSEMBH). Sprachspezifika sind dabei zu beachten (Paramaterübergaben, benötigte Laufzeitsysteme etc.).
Für POSIX-Objektdateien werden beim Bindelauf intern INCLUDE-MODULES-Anweisungen abgesetzt, für ar
-Bibliotheken und PLAM-Bibliotheken RESOLVE-BY-AUTOLINK-Anweisungen.