Creating shared objects
QNX SDP8.0Programmer's GuideDeveloper
To create a shared object suitable for linking against:
- Compile the source files for the library using the -shared option to qcc.
- To create the library from the individual object modules, simply combine them with the linker (this is done via the qcc compiler driver as well, also using the -shared command-line option).
Note:
Make sure that all objects and
staticlibs that are pulled into a .so are position-independent as well (i.e., also compiled with -shared).
If you make a shared library that has to static-link against
an existing library, you can't static-link against the
.a version (because those libraries
themselves aren't compiled in a position-independent
manner). Instead, there's a special version of the libraries
that has a capital S
just before the
.a extension. For example, instead of linking
against libsocket.a, you'd link against
libsocketS.a. But we recommend that you don't
static-link and instead link against the .so
shared object version.
Page updated: