The mk_shobj command creates and processes descriptive files for shared objects.
Syntax
mk_shobj [Options ...] Filename
Options ...
One or more command line options, separated by spaces.
Filename
Description file for shared objects in the POSIX file system which mk_shobj is to create.
Description
The mk_shobj command creates and processes descriptive files for shared objects in the POSIX file system. These descriptive files are evaluated by the Java interpreter if native methods are loaded (methods loadLibrary() or load() of the classes runtime and system).
The names of the descriptive files must be put together in such a way that they can be found by the VM using the search procedure described under the use of shared objects from Java, or in other words, beginning with the prefix lib and ending with the suffix .so.
Options
-? | Outputs help information for the command. |
-l lib | Specifies the PLAM library (in BS2000) in which the LLM to be loaded is located. |
-o userid | BS2000 user ID, under which the PLAM library lib is installed. Where “.” stands for the current user ID and “$” stands for the system ID and the form %name indicates, that the user ID to be used at runtime can be taken from the environment variable name and any other specification stands for the names of user IDs. Default: current user ID |
-m modulename | Specification of the module which is to be loaded. This option can be specified several times, and then all specified modules can be loaded dynamically. The module name may not be longer than 32 characters. |
-n filename | Specifies the required shared objects (descriptive file). The shared object specified here is loaded before the primary shared object. This option can be specified several times, and all the required shared objects are loaded before the current shared object. |
-u | The specified descriptive file must exist and is updated using the specified information. This can be used, for example, to subsequently modify the user ID. If the -u option is not specified, the descriptive file is generated again. |
-f cpp | If the shared object has been implemented in C++, this flag must be set to ensure that the required runtime libraries can be loaded and initialized. |
-d | If this flag is set, the module is loaded in the default context LOCAL#DEFAULT. |
-c ctxt | The module is loaded in the specified context. |
Example
The command
mk_shobj -l syslnk.hello -m helloworld libhello.so
creates the file libhello.so in the current file directory of the POSIX file system, and specifies that when hello is loaded the module helloworld is to be dynamically loaded from the PLAM library syslnk.hello of the current user ID. When hello is loaded the Java interpreter expands loadLibrary(hello) to read libhello.so.