[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home |
Legal |
Search ]
Commands Reference, Volume 4
rtl_enable Command
Purpose
Relinks shared objects to enable the runtime linker
to use them. This command only applies to AIX 4.2 or later.
Syntax
rtl_enable [ -R | -o Name ] [ -l ] [ -s ]
File [ ldFlag ... ] [ -F ObjsLibs ... ]
Description
The rtl_enable command relinks
a module, or an archive containing modules, with the -G
flag, to enable runtime linking. A module is an XCOFF file containing a loader
section. A shared object is a module with the F_SHROBJ flag set in the XCOFF
header.
In its simplest form, the rtl_enable command creates a new file with the name File.new. If File is a module, File.new will be the same kind of module. If File is an archive, File.new will be an archive whose members have the same names as the members
of File. The rtl_enable command
relinks the modules in the new archive to enable run-time linking. The rtl_enable command archives other members unchanged into
the output file.
The rtl_enable command uses
the loader section in File (or its members) to create
import and export files, to determine the libpath information,
and to determine the entry point.
Flags
-F ObjsLibs ... |
Adds ObjsLibs to the beginning of the generated ld command. The ObjsLibs parameter
is either an object file or a library (specified with the ld command's -l (lowercase L) flag). If you are
enabling an archive, adds the ObjsLibs to the ld command for all shared objects in the archive. |
-l |
(Lowercase L) Leaves the import and export files in the current directory
instead of deleting them. Import files have the suffix .imp and export files, the suffix .exp. The rtl_enable command adds the suffixes to the input file name if File is a module. It adds the suffixes to the names of members that are
modules if File is an archive. |
-o Name |
Specifies an alternate output file name instead of File.new. Do not use this flag with the -R flag. |
-R |
Replaces the input file instead of creating a new file. It will not
overwrite the input file if any errors occur. Do not use this flag with the -o flag. |
-s |
Generates a script of commands in the current directory that you
can use to create a new output file or archive, but does not relink anything.
It names the script Base.sh,
where Base is the basename of the input file with
any suffix stripped off. It writes generated import and export files in the
current directory as well. You can modify the script and the import and export
files to customize the output objects. |
Parameters
File |
Specifies the input file. |
ldFlag ... |
Copies the specified ld command flags to the
end of the generated ld command, overriding default
options.
Note: Do not use the -o flag in the ldFlag parameter to name the output
file. To specify an alternate output file name, use the rtl_enable command's -o Name flag. |
Exit Status
This command returns the following exit values:
0 |
Successful completion. |
>0 |
An error occurred. |
Note: Depending
on the error, some output files may have been created.
Security
Access Control: Any User
Auditing Events: N/A
Examples
To create a new version of libc.a with runtime linking enabled, enter:
- Create a directory for runtime version by
entering:
mkdir /tmp/rtllibs
- Make /tmp/rtllibs your current directory by entering:
cd /tmp/rtllibs
- To create the runtime version of libc.a
with the same name, enter:
rtl_enable -o libc.a /lib/libc.a
To use this version of libc.a when linking programs,
use -L /tmp/rtllibs with the ld
command.
Files
/usr/bin/rtl_enable |
Contains the rtl_enable command. This is a
symbolic link to /usr/ccs/bin/rtl_enable. |
Related Information
Commands: ld.
Shared Objects and Runtime
Linking in AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs.
[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home |
Legal |
Search ]