The detailed procedures for building and running non-XPLINK Language Environment-conforming
applications can be found in other topics in this information.
The procedures for building XPLINK Language Environment-conforming
applications can be summarized as:
- Compile the application with an XPLINK compiler
(the z/OS® XL C/C++ compiler)
using the XPLINK compiler
option.
- Link edit, with the DFSMS binder, the application (specifying
a PDSE or HFS file as the output data set) with the object files and
the following Language Environment input:
- Where SYSLIB for non-XPLINK applications
usually lists the SCEELKED, SCEELKEX, SCEEOBJ and SCEECPP data sets,
the SYSLIB for link-editing an XPLINK application
replaces these with the SCEEBND2 data set. SCEEBND2 contains all
object files necessary for building Language Environment-conforming XPLINK applications.
If you attempt to link edit an XPLINK application using the non-XPLINK
static libraries, or vice versa, you will receive the binder error
message IEW2469E indicating a mismatch in linkage type between function
reference and definition.
- If the XPLINK application
calls C runtime library (RTL) functions, it must include the XPLINK C RTL
side-deck CELHS003 that is in the SCEELIB data set. This is included
automatically by c89 when the -Wl,xplink option
is specified. See z/OS UNIX System Services Command Reference
or z/OS XL C/C++ User's Guide for
information about building XPLINK applications
in batch, TSO/E, and z/OS UNIX.
- If the XPLINK application
calls Language Environment AWIs
or CWIs, it must include the XPLINK Language Environment side-deck
CELHS001 that is in the SCEELIB data set.
- If the XPLINK application
is written in C++,
it picks up Language Environment C++ RTL
definitions from the XPLINK C++ side-deck
CELHSCPP that is in the SCEELIB data set. This side-deck is used
instead of the SCEECPP data set (the SCEECPP data set is used by non-XPLINK applications).
- Run the application by providing both SCEERUN and SCEERUN2 data
sets in the MVS™ program search
order, for example STEPLIB or LNKLST.
SCEERUN and SCEERUN2 can
be specified in any search order. The XPLINK(ON) runtime option is
required if the initial program in the application is non-XPLINK and
XPLINK programs may be called (via DLL).