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:

src/libyazpp.la

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

src/libzoompp.la

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

include/yazpp/*.h

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

yazpp-config

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).

zoom/zclient

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

src/yaz-my-client

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

src/yaz-my-server

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