Table 1-7 shows commands for compiling and linking Client-Library applications with libraries to take advantage of thread-safe support.
Platform |
Command |
---|---|
Sun Solaris SPARC 32-bit and 64-bit |
/opt/SUNWspro/bin/cc -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib -D_REENTRANT program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -lnsl -ldl -lpthread -lthread -lm -lsocket -o program |
Sun Solaris x86-64 32-bit and 64-bit |
/opt/SunStudio10/SUNWspro/bin/cc -xtarget=opteron -xarch=amd64 -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib -D_REENTRANT program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -lnsl -ldl -lpthread -lthread -lm -lsocket -o program |
IBM AIX RS/6000 32-bit and 64-bit |
xlc_r -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib -D_THREAD_SAFE program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -lpthread -lm -o program |
HP HP-UX PA-RISC 32-bit and 64-bit |
cc -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib -D_THREAD_SAFE -D_REENTRANT -Ae program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -lcl -lm -lBSD -lpthread -ldld -o program |
HP HP-UX Itanium 32-bit and 64-bit |
cc -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib -D_THREAD_SAFE -D_REENTRANT -Ae program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -lcl -lm -lBSD -lpthread -ldld -o program |
Linux x86 32-bit |
cc -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -ldl -lpthread -lnsl -lm -o program |
Linux POWER 32-bit and 64-bit |
xlc_r -q32 -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib program.c -lsybct_r -lsybcs_r -lsybtcl_r -lsybcomn_r -lsybintl_r -ldl -lpthread -lnsl -lm -o program |
Linux x86-64 64-bit |
gcc_r -I$SYBASE/$SYBASE_OCS/include -L$SYBASE/$SYBASE_OCS/lib program.c -lsybct64_r -lsybcs64_r -lsybtcl64_r -lsybcomn64_r -lsybintl64_r -ldl -lpthread -lnsl -lm64 -o program |
For HP HP-UX system users:
The option -Wl,-a,archive causes the linker to statically link the Sybase libraries. If you do not specify this option, Client-Library uses shared versions of the Sybase libraries. When using shared libraries, the SHLIB_PATH environment variable must include $SYBASE/$SYBASE_OCS/lib at runtime, and the application user must have read and execute permission on the libraries in $SYBASE/$SYBASE_OCS/lib.
HP HP-UX does not use the SHLIB_PATH environment variable at runtime unless the application is linked with the +s linker option. You must use the +s linker option so that the system can find Sybase libraries at runtime. -E is required to prevent undefined-symbol errors when driver libraries are loaded at runtime. See the HP-UX ld man page.
Set the environment variable LD_LIBRARY_PATH to $SYBASE/$SYBASE_OCS/lib to run programs linked with shareable (dynamic) libraries. If you are running in debug mode, set LD_LIBRARY_PATH to $SYBASE/$SYBASE_OCS/devlib to run the program.
LD_LIBRARY_PATH is platform-specific; Table 1-8 lists the environment variables for each platform.
Platform |
Environment variable |
---|---|
Sun Solaris SPARC 32-bit, Sun Solaris x86-64 32-bit, HP HP-UX PA-RISC 64-bit, HP HP-UX Itanium 64-bit, Linux x86 32-bit, Linux POWER 32-bit and 64-bit, Linux x86-64 64-bit |
LD_LIBRARY_PATH |
Sun Solaris SPARC 64-bit, Sun Solaris x86-64 64-bit |
LD_LIBRARY_PATH_64 |
HP HP-UX PA-RISC 32-bit, HP HP-UX Itanium 32-bit |
SHLIB_PATH |
IBM AIX RS/6000 32-bit and 64-bit |
LIBPATH |