/usr/lib/libCsup.sl, /usr/lib/libstd.sl, /usr/lib/librwtool.sl, and /usr/lib/libstream.sl
which are provided as part of the HP-UX core system)
Be sure your customer has read this distribution information.
NOTE: If you choose to distribute archive libraries or object files, your customer must have purchased HP aC++.
The following HP aC++ run-time libraries are shipped as part of the HP-UX 11.x core system:
Refer also to the CAUTION in the section Installing your Application.
The C++ language requires that nonlocal static objects be initialized
before any function or object is used.
HP aC++ initializes nonlocal static objects in all object files,
including shared libraries, before the first statement in main() executes.
If you distribute HP aC++ libraries that your customers will use, they must
do the following to ensure that nonlocal static objects are correctly
initialized and destroyed:
main program is written in a language
other than C++, your customer's main program must
first call _main() before doing anything else.
_main() calls all nonlocal static constructors.
NOTE:
64-bit mode differs from the above.
In 64-bit mode, your code must not call _main.
_main() must still be called, before any use of aC++ code.
It could be placed in the C++ library itself.
NOTE:
64-bit mode differs from the above.
In 64-bit mode, your code must not call _main.
/usr/lib/libcl.sl (or on the link line -lcl)
-lstd -lstream -lCsup -lm -lcl -ldld
as cpprt0_stub.sor
cc -c cpprt0_stub.sA copy of the stub file cpprt0_stub.s can be shipped.
================ cpprt0_stub.s ===================
.code
; stubs for static constructors in a.out
.export __StaticCtorTable_Start,data
.export __StaticCtorTable_End,data
__StaticCtorTable_Start
__StaticCtorTable_End
.data
; stubs for static constructors in a.out, compiled with +z/+Z
.export __ZStaticCtorTable_Start,data
.export __ZStaticCtorTable_End,data
__ZStaticCtorTable_Start
__ZStaticCtorTable_End
In addition, your customers should review Mixing C++ with other Languages for information on linking HP aC++ modules with HP C, HP Pascal, and HP FORTRAN 77.
NOTE: HP aC++ code cannot be mixed with HP C++ code.
Normally your customer will already have the correct runtime installed. If your product requires a newer version, it is recommended that the customer install the latest patch.
Your application's installation procedure should install the appropriate HP aC++ components in the standard places on your customer's systems. This will ensure that the aCC command can find them.
CAUTION: If your customer already has HP aC++ installed and their version is newer than yours, you should never overwrite any of the existing HP aC++ components. In addition, you should not install your product on a system that has a newer version of HP aC++ if that newer version is incompatible with your version.
You should also warn your customers not to install a version of HP aC++ after installing your product if their version of HP aC++ is incompatible with your version.
Refer to the CAUTION in the prior section Applications that use HP aC++ Shared Libraries.