H-Series Application Migration Guide (H06.03+)

The TNS/E Native Development Environment
H-Series Application Migration Guide429855-006
2-7
TNS/E Native Linker and Loader
VERSION1 of the C++ native run-time library is not supported in the H-series RVUs.
Migrating to VERSION2 or VERSION3 will likely require some source code changes.
See Native C and C++ Run-Time Library and Tools.h++ Migration Issues on page 5-7
for more information.
For a VERSION2 link, use ZCPPCDLL and ZCPP2DLL (or libcppc.so and libcpp2.so).
For a VERSION3 link, use ZCPPCDLL and ZCPP2DLL (or libcppc.so and libcpp3.so).
TNS/E Native Linker and Loader
The TNS/E native linker, eld, links one or more native position-independent code (PIC)
linkfiles (object files generated by the TNS/E native compilers or by eld) to produce a
PIC loadfile. The loadfile is either a program or a dynamic-link library (DLL), which can
be loaded into memory and executed. eld can also modify process attributes, such as
HIGHPIN, of executable object files and strip nonessential information from native
object files.
eld runs in the Guardian and OSS environments and on the PC, where you can run eld
as part of ETK. eld syntax and capabilities are nearly identical in the OSS and
Guardian environments.
The PIC run-time loader, rld, works with the operating system to dynamically link and
load PIC loadfiles and their requisite DLLs into memory at execution time. You do not
call rld directly (at the command prompt), but you can access it programmatically
through the rld run-time linking functions. See the eld Manual and the rld Manual for
more information about eld and rld.
Comparing ld and eld
The TNS/E linker eld has the same purpose as the TNS/R PIC linker ld. Both linkers
work with PIC files and both enable you to create and link DLLs. eld has nearly
identical command line syntax to ld; it supports the same option flags as ld, but
provides a number of additional option flags that are not provided by ld. In addition,
some command options have changed. For example, the OKTOSETTYPE option is
not meaningful and is not recognized by the eld -set and -change flags. See the eld
Manual for details.
C++ VERSION2 standard run-
time library
ZRWSLSRL
ZCPLSRL
libstd.srl
libC.srl
ZCPPCDLL
ZCPP2DLL
libcppc.so
libcpp2.so
C++ VERSION3 standard run-
time library
ZSTDSRL libstl.srl ZCPPCDLL
ZCPP3DLL
libcppc.so
libcpp3.so
Tools.H++ 7.0 ZTLHSRL libtlh.srl ZTLH7DLL libtlh7.so
Table 2-3. G-Series and H-Series Run-Time Libraries
Library
G-Series SRL Name
Guardian PC
H-Series DLL Name
Guardian PC