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.
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):
For the Qgar API core (i.e. the library and the applications):
Autoconf 2.59, or higher
Automake 1.4-p6, or higher
GNU make
gcc 4.0.2, or higher
For the API documentation:
All API sources are self-documented using doxygen (http://www.stack.nl/~dimitri/doxygen/download.html)
For the graphical user interface:
Qt 3.3.3.4, or higher (http://www.trolltech.com/download/index.html)
To enable XML support by the Qgar library, an external API to parse XML documents must be imported, like:
Qt 3.3.3.4, or higher (http://www.trolltech.com/download/index.html)
Xerces-C++ 2.2, or higher (http://xml.apache.org/xerces-c/download.cgi/)
Download from the Qgar website
The latest stable version of the platform sources is available on the Qgar website (http://www.qgar.org/download.php). The library (QgarLib), the applications (QgarApps), and the user interface (QgarGui) are bundled in a gzipped tar archive.
Create, if necessary, a directory where to install the platform, and move to it. Download the archive, and then unzip and untar it:
mkdir myqgar cd myqgar ... DOWNLOAD THE GZIPPED TAR ARCHIVE ... tar xvfz qgar-2.2.tar.gz
Download using CVS
Users provided with an access to the LORIA intranet can directly download the sources using CVS. The CVS root directory (CVSROOT) is /local/qgar/Qgar/cvsroot and the module name is Qgar.
Create, if necessary, a directory where to install the Qgar platform, move to it, and then get the sources:
... (ASSUMING YOU HAVE A csh-COMPATIBLE SHELL) ... mkdir myqgar cd myqgar setenv CVSROOT /local/qgar/Qgar/cvsroot cvs checkout Qgar
Initialize the configuration, if necessary:
./bootstrap
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
Compile the Qgar package:
make
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.
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):
[prefix]/bin contains symbolic links the Qgar applications and to the user interface, as well as a script named qgar, to invoke the user interface,
[prefix]/lib contains the Qgar library libqgar.a, and [prefix]/lib/qgar contains the Qgar applications and the user interface,
[prefix]/include/qgarlib contains the header files of the QgarLib library.
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] \
...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] \
...