Building applications in C on Compaq Tru64 UNIX Version 4.0

This section describes how to build application programs written in C to run under Compaq Tru64 UNIX Version 4.0.

C language include files

The WebSphere MQ C include files are listed in Table 19. They are installed in the directory /opt/mqm/inc/. The include files are symbolically linked into /usr/include.

Table 19. C include files for MQSeries (Compaq Tru64 UNIX Version 4.0)

File name Contents
<cmqc.h> Call prototypes, data types, structures, return codes, and constants
<cmqcfc.h> Definitions for programmable commands
<cmqxc.h> Definitions for channel exits and data-conversion exits
<cmqzc.h> Definitions for installable services exits
Note:
The files are protected against multiple declaration, therefore you can include them many times.

Preparing C programs

Work in your usual environment. Precompiled C programs are supplied in the /opt/mqm/samp/bin directory. Here is an example instruction for building the sample program amqsput0.c in a nonthreaded environment:

$ cc -std1 -o amqsput amqsput0.c -lmqm

Here is an example instruction for building the sample program amqsput0.c in a threaded environment:

$ cc -std1 -pthread -o amqsput amqsput0.c -lmqm_r

If you want to use the programs on a machine on which only the MQSeries client for Compaq Tru64 UNIX is installed, recompile the programs to link them with the client library. Here is an example instruction for building a nonthreaded client:

$ cc -std1 -o amqsput amqsput0.c -lmqmic

Here is an example instruction for building a threaded client:

$ cc -std1 -pthread -o amqsput amqsput0.c -lmqmic_r

Linking libraries

In a nonthreaded environment, you must link to one of the following libraries:

Library file Program or exit type
libmqm.so Server for C
libmqic.so Client for C

In a threaded environment, you must link to one of the following libraries:

Library file Program or exit type
libmqm_r.so Server for C
libmqic_r.so Client for C
Note:
If you are writing an installable service (as described in WebSphere MQ System Administration Guide), you need to link to the libmqmzf.so library.


© IBM Corporation 1993, 2002. All Rights Reserved