Compiling the Reference Message Exit sample

MQ_INSTALLATION_PATH represents the high-level directory in which WebSphere MQ is installed.

To compile amqsxrma, use the following commands:

On AIX®

xlc_r -q64 -e MsgExit -bE:amqsxrm.exp -bM:SRE -o amqsxrm_64_r
-IMQ_INSTALLATION_PATH/inc -LMQ_INSTALLATION_PATH/lib64 -lmqm_r amqsqrma.c

On HP-UX

$ c89 +DD64 +z -c -D_HPUX_SOURCE -o amqsxrma.o amqsqrma.c -IMQ_INSTALLATION_PATH/inc
$ ld -b amqsxrma.o -o /var/mqm/exits64/amqsxrma -LMQ_INSTALLATION_PATH/lib64 
-L/usr/lib/pa20_64 -lmqm_r -lpthread

On Linux®

$ gcc -m64 -shared -fPIC -o /var/mqm/exits64/amqsxrma amqsqrma.c -IMQ_INSTALLATION_PATH/inc 
-LMQ_INSTALLATION_PATH/lib64 -Wl,-rpath=MQ_INSTALLATION_PATH/lib64 -Wl,-rpath=/usr/lib64 -lmqm_r

On Solaris

$ cc -xarch=v9 -mt -G -o /var/mqm/exits64/amqsxrma amqsqrma.c -IMQ_INSTALLATION_PATH/inc 
-LMQ_INSTALLATION_PATH/lib64 -RMQ_INSTALLATION_PATH/lib64 -R/usr/lib/64 -lmqm 

 -lsocket 
-lnsl -ldl

On Windows

WebSphere® MQ now supplies the mqm library with client packages as well as server packages, so the following example uses mqm.lib instead of mqmvx.lib:
cl amqsqrma.c /link /out:amqsxrm.dll /dll mqm.lib mqm.lib /def:amqsxrm.def
For general information about writing and compiling channel exits, see Writing channel-exit programs