3. Source installation

When the platform cannot be installed using the ready-made binary packages, or when a customized version is required, the platform can be entirely (re)constructed from its sources.

3.1. Software Requirements

Before starting the installation of the platform, check that the required tools are available on the host computer (in some cases, installation could nevertheless be possible using lower versions of some tools):

3.2. Download the Qgar platform

3.3. Compile sources on Linux OS

  1. Initialize the configuration, if necessary:

    ./bootstrap
  2. Run the configuration script:

    ./configure

    Important: If configure is run without any parameter, the Qgar library (without XML support) and the Qgar applications (which do not require XML) are installed, but the graphical user interface is not. See section Compile optional packages for other options.

    The list of all parameters which can be passed to configure is available in appendix A. It can also be obtained online, using option --help of the configure script:

    ./configure --help
  3. Compile the Qgar package:

    make
  4. Compile the online documentation (optional). doxygen (http://www.stack.nl/~dimitri/doxygen/download.html) must be installed on the host computer:

    make doc

All these operations may succesively be executed using script install-qgar provided in the installation directory. Warning: the script must clearly be adapted to the local installation requirements before being invoked.

3.4. Install the sources on Linux OS

Once all the sources are compiled, complete the installation of the platform:

make install

Let [prefix] be the installation base directory of the platform (the default is /usr/local, but it can be changed using the --prefix option of the configuration script):

3.5. Compile optional packages on Linux OS

3.5.1. Compile the graphical user interface

The Qgar user interface is designed with the Qt framework and must therefore be linked against the Qt shared library (http://www.trolltech.com/download/index.html). To enable its installation along with that of the Qgar platform, two configuration options must be set. Let [path_to_qt_directory] be the root directory of the Qt framework on the host computer:

configure --enable-gui                        \
          --with-qtdir=[path_to_qt_directory] \
          ...

If the Qt library, utilitary binaries (such as MOC) and include files do not share a common root directory on the host computer, the path to the corresponding directories must be explicitely given to the configuration script:

configure --enable-gui                                  \       
          --with-qt-bindir=[path_to_qt_binaries]        \
          --with-qt-includes=[path_to_qt_include_files] \
          --with-qt-libraries=[path_to_qt_libraries]    \
	   ...

3.5.2. Enable XML support

The user interface interactively displays documentation (about Qgar applications) which is internally coded in the XML format. As the Qgar platform does not directly support this format, an external API must be installed to handle the corresponding files: Currently, it may be Qt or Xerces.

  • Using the Qt XML API

    XML support with Qt (http://www.trolltech.com/download/index.html) is enabled using two options of the configuration script:

    configure --enable-xml                        \
              --with-qtdir=[path_to_qt_directory] \
              ...

    If the Qt library and include files do not share a common root directory on the host computer, the path to both corresponding directories must be explicitly given to the configuration script:

    configure --enable-xml                                  \       
              --with-qt-includes=[path_to_qt_include_files] \
              --with-qt-libraries=[path_to_qt_libraries]    \
              ...
  • Using the Xerces XML API

    XML support with Xerces (http://xml.apache.org/xerces-c/download.cgi/) is enabled using two options of the configuration script:

    configure --enable-xml                                \
              --with-xercesdir=[path_to_xerces_directory] \
              ...

    If the Qt library and include files do not share a common root directory on the host computer, the path to both corresponding directories must be explicitly given to the configuration script:

    configure --enable-xml                                          \
              --with-xerces-includes=[path_to_xerces_include_files] \
              --with-xerces-libraries=[path_to_xerces_library]      \
              ...