This file describes how to install the G System. AFTER READING THE INSTALL INSTRUCTIONS PLEASE TAKE A LOOK AT THE README FILE TO LEARN HOW TO USE THE FRONTENDS. This includes instructions for compiling the source code, generating the documentation and how to install these into your system. QUICK INSTALLATION: Go to the top directory of the G System. Run the graphical installer by either clicking on it or typing ./installer in a terminal. If you want a terminal based installation, read the full instructions. FULL INSTALL INSTRUCTIONS: Requirements: Libraries: * Qt 3 library with multithreading ("qt-mt") and OpenGL support. * AT LEAST ONE Qt database plugin, SQLite or PostgreSQL is recommended. * qmake (included in standard Qt installations) * KDE 3 (with headers) for the frontends, without KDE only the libs and the server will be built. Install your development packages of KDE (kdelibs-devel). Compiler: * C++ Compiler with exceptions, namespace and RTTI support (gcc >= 3 should work). * MS VC++ or Borland with Qt on Windows should work as well, but is not used or tested by the developers. If you use MS VC++, keep in mind that you need to use dllexport for all libraries. If you want to build the documentation by hand, you need a few more things: * doxygen and htmldoc to build the API documentation. * graphviz for nice diagrams in the API docs (optional). * DocBook XML to build all other docs. What will be installed? Librares: GCS, GWE, GBE, GCE Binaris: gdemo, guniverse, guniverseclient, GOD Header/Include files for developing G System based software. Install procedure: UNIX sytems: Make sure you call ALL scripts from the top directory of the G System. There is a nice graphical installation available at the top directory of the G System, it's called "installer". Simply start it from that directory to get everything done. If you want a terminal based installation, read on. Set the environment variable G_PREFIX to the desired installation prefix. By default this is /usr/local. If this is ok for you then you don't need to set G_PREFIX yourself. tar xjf G-System-x.y.z.tar.bz2 cd G-System-x.y.z ./scripts/compile # compiles the source code ./scripts/makedocs -a all # builds the documentation ./scripts/makedocs api # builds the API Reference su ./scripts/makeinstall exit Now the libraries are installed in $G_PREFIX/lib The binaries are installed in $G_PREFIX/bin The headers are installed in $G_PREFIX/include/G If you are tracking the latest developments in the subversion repository, you should use the cleancompile shell script in the trunk directory if you get compilation errors or unexpected crashes by using ./compile only. Otherwise you simply can do ./compile after every update. On version changes it is highly recommended to do a ./cleancompile to also delete the old output libraries and binaries. If you intend to run the binaries without installing them first you can simply do this by setting the LD_LIBRARY_PATH to the lib directory. This works perfectly fine. DOCUMENTATION Normally, you can find up-to-date docs on the website. If you still want to build the documentation yourself, you only need to call ./scripts/makedocs and read the instructions. API Reference documentation The API documentation is built by makedocs if you choose it. You need to have doxygen installed and it is also recommended to have the dot application installed to get nice diagrams. Get the dot program included in the graphviz package from: http://www.research.att.com/sw/tools/graphviz/ Troubleshooting: If compilation stops at GAgent.cpp and the output says that some include files can't be found (like "qobject.h",...) then it is likely that the environment variable QTDIR is not set. To check if it is set, simply type "echo $QTDIR" and if there is no output then it is NOT set. Make sure QTDIR is set to the directory where Qt is installed (like /usr/local, /opt/qt3, /usr/lib/qt3, /usr/X11 or something like that). To set the variable, you can type "export QTDIR=/dir/to/qt" when your shell is bash (almost every Linux distribution) and "setenv QTDIR /dir/to/qt" for csh or tcsh (almost every BSD system, including MAC OS X). After you have set QTDIR, you should continue with the installation procedure whith "qmake". In case you want to build the frontends, you might need to set the KDEDIR environment variable manually to your KDE directory. If KDEDIR is not set, it is autodetected by calling `kde-config --prefix`. You MUST make sure that the include files for KDE are available under $KDEDIR/include and the libraries must be available under $KDEDIR/lib. The cleancompile script requires you to have all environment variables set. So you should work with ./scripts/cleancompile if there are any problems with the normal procedures. If any problems remain, please contact us on the mailing lists.