Das Kommando mk_shobj erzeugt und bearbeitet Beschreibungsdateien für Shared Objects.
Syntax
mk_shobj [ Optionen ...] dateiname
Optionen ...
Eine oder mehrere Kommandozeilenoptionen, durch Leerzeichen getrennt.
dateiname
Beschreibungsdatei für Shared Objects im POSIX-Dateisystem, die mk_shobj erzeugen soll.
Beschreibung
Das Kommando mk_shobj erzeugt eine Beschreibungsdatei für Shared Objects im POSIX-Dateisystem. Diese Beschreibungsdatei wird vom Java-Interpreter ausgewertet, wenn native Methoden nachgeladen werden (Methode loadLibrary() bzw. load() der Klassen Runtime und System).
Die Namen der Beschreibungsdateien müssen so gebildet sein, dass sie von der VM nach dem oben beschriebenen Suchverfahren unter Nutzung von Shared Objects aus Java gefunden werden können, also z.B. mit dem Präfix lib beginnend und mit dem Suffix .so endend.
Optionen
-?
Ausgabe von Hilfeinformationen zum Kommando.
-l lib
Spezifikation der PLAM-Bibliothek (im BS2000), in der der nachzuladende LLM abgelegt ist.
-o userid
BS2000-Benutzerkennung, unter der die PLAM-Bibliothek lib installiert ist. Dabei bedeutet „.“ die aktuelle Benutzerkennung, „$“ die Systemkennung, die Form %name, dass die zu nutzende Benutzerkennung zur Laufzeit der Umgebungsvariablen name zu entnehmen ist und jede andere Angabe den Namen einer Benutzerkennung.
Standard: Aktuelle Benutzerkennung.
-m modulname
Spezifikation des Moduls, der nachgeladen werden soll. Diese Option kann mehrfach angegeben werden, wobei dann alle angegebenen Module dynamisch nachgeladen werden. Der Modulname darf nicht länger als 32 Zeichen sein.
-n dateiname
Spezifikation eines benötigten Shared Objects (Beschreibungsdatei). Das hier an-gegebene Shared Object wird vor dem primären Shared Object nachgeladen. Diese Option kann mehrfach angegeben werden, wobei dann alle benötigten Shared Objects vor dem aktuellen Shared Object geladen werden.
-u
Die angegebene Beschreibungsdatei muss existieren und wird mit den angegebenen Informationen aktualisiert. Dies kann z.B. verwendet werden, um die Benutzerkennung nachträglich zu modifizieren. Ist -u nicht angegeben, wird die Beschreibungsdatei neu angelegt.
-f cpp
Dieses Flag muss gesetzt werden, wenn das Shared Object in C++ implementiertworden ist, damit die notwendigen Laufzeitbibliotheken nachgeladen und initialisiert werden können.
-d
Wenn dieses Flag gesetzt ist, wird der Modul in den Defaultkontext LOCAL#DEFAULT geladen.
-c ctxt
Der Modul wird in den angegebenen Kontext geladen.
Beispiel
Das Kommando
mk_shobj -l syslnk.hello -m helloworld libhello.so
legt im aktuellen Dateiverzeichnis des POSIX-Dateisystems die Datei libhello.so an. Es hinterlegt, dass beim Laden von hello der Modul helloworld aus der PLAM-Bibliothek syslnk.hello der aktuellen Benutzerkennung nachgeladen werden soll. loadLibrary(hello) wird dabei vom Java-Interpreter ergänzt zu libhello.so.