System V (SysV) has a defined model for accessing the program and imported data and code from other models. If required, the linker automatically generates the required Procedure Linkage Table (PLT) and Global Offset Table (GOT) sections.
SysV shared libraries are compiled with position independent
code using the
--apcs=/fpic compiler command-line
The linker command-line option
also be used to declare that a shared library is position independent
because this affects the construction of the PLT and GOT sections.
By default, the linker produces an error message if the command-line
--shared is given without the
If you must create a shared library that is not position independent, you
can turn the error message off by using