Chapter 2. Installation
Prev |  | Next

# Chapter 2. Installation

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.

Prev |  | Next
Chapter 1. Introduction | Home | 2. Installation on Windows