Compiling Custom Programs
After you write a custom program, you must compile it, using a C or C++ compiler. Refer to the following information to determine what minimum C++ compiler version to use for each platform:
| Platform | C++ Compiler |
|---|---|
| AIX | IBM® XL C++ V8.0 for AIX |
| Sun Solaris | SPARC/x86 C++5.7 |
| HP | aCC: HP ANSI C++ B3910B A.03.73 |
| HP-Itanium | aCC: HP ANSI C++ B3910B A.06.07 |
| Linux | c++ version 3.3.3 |
Use the commands defined in the following table to compile a custom C++ program using the C++ API calls:
| Platform | C++ Compile Command |
|---|---|
| AIX | |
| 64-bit | /usr/vacpp/bin/xlC -q64 -qinline -I../include -+ -o sdksample sdksample.C ../lib/ndmapi64.a -lbsd -ldl -lsrc -lpthreads |
| 32-bit | /usr/vacpp/bin/xlC -qinline -I../include -+ -o sdksample sdksample.C ../lib/ndmapi.a -lbsd -ldl -lsrc -lpthreads |
| Sun | |
| 32-bit | /opt/SUNWspro/bin/CC -DBSD_COMP -I../include -o
sdksample sdksample.C ../lib/ndmapi.a -L/usr/ucblib -L/usr/lib -lsocket
-lrpcsoc -lnsl -lelf -ldlNote: If /usr/ucblib
is not in the LD_LIBRARY_PATH variable, add
-R/usr/ucblib to the
compile command.
|
| 64-bit | /opt/SUNWspro/bin/CC -xarch=generic64 -DBSD_COMP
-I../include -o sdksample sdksample.C ../lib/ndmapi64.a -L/usr/ucblib/sparcv9 -L/usr/lib/sparcv9 -L/usr/ucblib/amd64 -lsocket -lrpcsoc -lnsl -lelf -ldl -R/usr/ucblib/sparcv9 -R/usr/ucblib/amd64 |
| HP | |
| 32-bit | /opt/aCC/bin/aCC -AA -I../include -o sdksample sdksample.C ../lib/ndmapi.a -lrpcsoc -lnsl -ldld -Wl,+s |
| 64-bit | /opt/aCC/bin/aCC -AA +DD64 -I../include -o sdksample sdksample.C ../lib/ndmapi64.a -L/usr/lib/pa20_64 -lnsl -ldld -Wl,+s |
| HP-Itanium | |
| 32-bit | /opt/aCC/bin/aCC -I../include -o sdksample sdksample.C ../lib/ndmapi.a -lrpcsoc -lnsl -ldld -Wl,+s -lunwind |
| 64-bit | /opt/aCC/bin/aCC +DD64 -I../include -o sdksample sdksample.C ../lib/ndmapi64.a -L/usr/lib/hpux64 -lrpcsvc -lnsl -ldld -Wl,+s -lunwind |
| Linux | |
| 32-bit | g++ -m32 -I../include -O -DLINUX -o sdksample
sdksample.C ../lib/ndmapi.a -ldl -lnss_nis /usr/lib/libstdc++.so.5 Note: If
you are compiling for Linux z/OS, change -m32 to -m31.
|
| 64-bit | g++ -I../include -O -DLINUX -o sdksample sdksample.C
../lib/ndmapi64.a -ldl -lnss_nis /usr/lib64/libstdc++.so.5 Note: A
64-bit Linux OS installation is required to compile 64-bit binaries.
|
To build a C++ program using the C API calls, such as the apicheck.C sample program, replace the sdksample.C parameter with the name of the C++ program and rename the output file parameter, -o sdksample, to the name of the output file you want to create such as apicheck.
Use the commands defined in the following table to compile a C program:
| Platform | C Compile Command |
|---|---|
| AIX | |
| 32-bit | /usr/vacpp/bin/xlc -I../include -+ -o apicheck apicheck.c ../lib/ndmapi.a -lbsd -ldl -lsrc -lC -lpthreads |
| 64-bit | /usr/vacpp/bin/xlc -q64 -I../include -+ -o apicheck apicheck.c ../lib/ndmapi64.a -lbsd -ldl -lsrc -lC -lpthreads |
| Sun | |
| 32-bit | /opt/SUNWspro/bin/cc -DBSD_COMP -I../include -o
apicheck apicheck.c ../lib/ndmapi.a -L/usr/ucblib -L/usr/lib -lCstd
-lsocket -lrpcsoc -lnsl -lelf -ldl -lCrun Note: If /usr/ucblib is not
in the LD_LIBRARY_PATH variable, add
-R/usr/ucblib to the compile
command.
|
| 64-bit | /opt/SUNWspro/bin/cc -xarch=generic64 -DBSD_COMP
-I../include -o apicheck apicheck.c ../lib/ndmapi64.a -L/usr/ucblib/sparcv9 -L/usr/lib/sparcv9 -L/usr/ucblib/amd64 -lsocket -lCstd -lCrun -lrpcsoc -lnsl -lelf -ldl -lCrun -R/usr/ucblib/sparcv9 -R/usr/ucblib/amd64 |
| HP | |
| 32-bit | /opt/ansic/bin/cc -I../include -o apicheck apicheck.c ../lib/ndmapi.a -lrpcsoc -lnsl -ldld -Wl,+s -lcl -lstd_v2 -lCsup_v2 |
| 64-bit | /opt/ansic/bin/cc +DD64 -I../include -o apicheck apicheck.c ../lib/ndmapi64.a -L/usr/lib/pa20_64 -lnsl -ldld -Wl,+s -lcl -lstd_v2 -lCsup_v2 |
| HP-Itanium | |
| 32-bit | /opt/ansic/bin/cc -I../include -o apicheck apicheck.c ../lib/ndmapi.a -lrpcsoc -lnsl -ldld -Wl,+s -lcl -lstd_v2 -lCsup -lunwind |
| 64-bit | /opt/ansic/bin/cc +DD64 -I../include -o apicheck apicheck.c ../lib/ndmapi64.a -L/usr/lib/hpux64 -lrpcsvc -lnsl -ldld -Wl,+s -lcl -lstd_v2 -lCsup -lunwind |
| Linux | |
| 32-bit | gcc -m32 -I../include -O -DLINUX -o apicheck apicheck.c ../lib/ndmapi.a -ldl -lnss_nis /usr/lib/libstdc++.so.5 |
| 64-bit | gcc -I../include -O -DLINUX -o apicheck apicheck.c
../lib/ndmapi64.a -ldl -lnss_nis /usr/lib64/libstdc++.so.5 Note: A
64-bit Linux OS installation is required to compile 64-bit binaries.
|
| LinuxS390 | |
| 32-bit | gcc -m31 -I../include -O -DLINUX -o apicheck apicheck.c ../lib/ndmapi.a -ldl -lnss_nis /usr/lib/libstdc++.so.5 |
| 64-bit | gcc -I../include -O -DLINUX -o apicheck apicheck.c
../lib/ndmapi64.a -ldl -lnss_nis /usr/lib64/libstdc++.so.5 Note: A
64-bit Linux OS installation is required to compile 64-bit binaries.
|