fixso - Fixes a shared object so that it can be quickstarted
fixso [+i | -i] [+w | -w] [+d | -d] [+n | -n] [-V] [-o
outputobj] [-p path] inputobj
Turns informational message reporting on and off, respectively.
By default (-i), informational messages are not
reported. Turns warning message reporting on and off,
respectively. By default (+w), warning messages are
reported. Turns debugging message reporting on and off,
respectively. By default (-d), debugging messages are not
reported. Turns output generation on and off, respectively.
By default (+n), fixso writes output to a.out or
to the file specified by the -o option. If you specify
-n, fixso just analyzes the inputobj and generates no output.
Displays the version of the fixso command. Specifies
the file to which fixso writes its output. By
default, output is sent to a.out. Adds path to the beginning
of the shared library search path. The default
library search path, as explained in loader(5), is used.
The fixso utility also honors any definition of the
LD_LIBRARY_PATH environment variable.
The fixso utility allows executables that depend on a
shared library registered in the so_locations database to
continue to run quickstarted even if the shared library
changed after the time the executable was originally
linked against it. The fixso utility accomplishes this by
adjusting the object's checksum and timestamp, reconciling
the object's conflict table (the list of symbols that are
multiply defined among the entries in the object's library
list), and resolving global symbols.
You specify one executable or shared object in the
inputobj parameter. The fixso utility opens the target
object, scanning its library list for dependencies on symbols
defined in other objects. When it discovers a dependency,
it automatically opens the associated object and
continues processing it in the same manner, as long as it
is located in the default library search path, the path
indicated by the LD_LIBRARY_PATH environment variable, or
specified by the -p option. Otherwise, it generates a message
advising you to run fixso on that object first.
The fixso utility examines each object's interface version,
shared object name (soname), timestamp, and checksum.
Although it can adjust timestamp and checksum discrepancies
among the entries in the object's library list,
fixso has the following limitations: The fixso utility
does not change the size of the binary object; it will not
expand the size of the conflict table if it encounters a
new multiply-defined symbol while traversing the object's
library list. An object's actual run-time memory location
must match the quickstart location recorded in the
so_locations file. The fixso utility cannot make an
object quick-startable if the object has been moved from
its quickstart location, or if another object has been
moved into its quickstart location. The version of the
run-time linker interface used by an object mapped in the
inputobj's library list must be the same version used when
inputobj was created by the linker. An object mapped in
inputobj's library list must be located in the same
library search path it was in when inputobj was created by
the linker. The soname of an object mapped in inputobj's
library list must be the same as when inputobj was created
by the linker. By default, an object's soname is its filename
(without a prepended pathname).
The fixso utility generates the following types of messages:
Error messages that indicate when the current use
of the tool violates one of its limitations, as described
previously. Error messages also help you determine the
correct order in which to run fixso on a series of
objects. You cannot turn off error messages. Warning messages
that indicate conflicts, such as timestamp and
checksum mismatches, that fixso attempts to fix automatically.
The fixso utility generates warning messages by
default. You can turn them off by specifying the -w
option. Informational and debug messages that record the
fixso utility's progress. These messages are turned off by
default, but you can turn them on by using the +i and +d
options, respectively.
Shared library directory. Shared library directory.
Shared library directory. Shared library directory.
Shared library directory. Fix quickstarted shared objects
utility.
ld(1), loader(5)
Programmer's Guide
fixso(1)
[ Back ] |