Chapter 2. Installation

Table of Contents

1. Installation on Unix (from source)
2. Installation on Windows

You need a C++ compiler to compile and use YAZ++. The software was implemented using GCC so we know that works well with YAZ++. From time to time the software is compiled on Windows using Visual C++. Other compilers should work too. Let us know of portability problems, etc. with your system.

YAZ++ is built on top of the YAZ toolkit. You need to install that first. For some platforms there are binary packages for YAZ.

1. Installation on Unix (from source)

On UNIX, the software is compiled as follows:

     $ ./configure
     $ make
     $ su
     # make install

You can supply options for the configure script. The most useful ones are:

--prefix directory

Specifies installation prefix. By default /usr/local is used.

--with-yaz directory

Specifies the location of yaz-config. The yaz-config program is generated in the source directory of YAZ as well as the binaries directory when YAZ is installed (via make install).

If you don't supply this option, configure will look for yaz-config in directories of the PATH environment - which is nearly always what you want.

For the whole list of configure options, refer to the help: ./configure --help

Configure uses GNU's C/C++ compiler if available. To specify another compiler, set CXX. To use other compiler flags, specify CXXFLAGS. To use CC with debugging you could use:

     CXXFLAGS="-g" CXX=CC ./configure

This is what you have after successful compilation:


The YAZ++ library. This library gets installed in your libraries directory (prefix/lib).


The ZOOM-C++ library. This library gets installed in your libraries directory (prefix/lib).


Various C++ header files, which you'll need for YAZ++ development. All these are installed in your header files area (prefix/include/yazpp).


pkg-config configuration for making applications linking with the yaz++ library. Use pkg-config --cflags yazpp to get compiler flags. Use pkg-config --libs yazpp to get libraries.


A Bourne shell-script utility that returns the values of the CFLAGS and LIBS environment variables needed in order to compile your applications with the YAZ++ library. This script gets installed in your binaries directory (prefix/bin).


Using yazpp-config is deprecated. Use yazpp.pc instead.


ZOOM C++ demonstration client that uses the ZOOM C++ classes. This client does not get installed in the system directories.


YAZ C++ demonstration client. This client does not get installed in the system directories.


YAZ C++ demonstration server. This server does not get installed in the system directories.