Skip to content

duzenko/sgems2016

Repository files navigation

This rudimentary readme file contains information on how to compile S-GeMS
on Unix systems. For Windows systems, only Visual C++ 6 with Intel compiler 7.x
or 8.x, or Visual C++ .Net 2003 are currently supported. A workspace file (.dsw/.sln) is available in directory WinGsTLAppli.

Project files (.dsp/.vcproj) are available in each subdirectory of GsTLAppli.

S-GeMS is distributed under two licenses (choose one): the GPL license and the
Xfree license. Copies of these two licenses are in files LICENSE.GPL and 
LICENSE.XFREE.

Note: The name of this software has changed several times, so you might find
that it is sometimes called GEMS, Simulacre, or GsTLAppli...



Compiling:
--------------- 
Warning: the compilation process of S-GeMS is not streamlined yet, and might 
require some manual intervention. 

Before you try to compile S-GeMS, make sure that you have the following 
libraries:
- Qt     (www.trolltech.com)
- Coin   (www.coin3d.org)
- SoQt   (www.coin3d.org)
- SimVoleon (www.coin3d.org)
- Python (www.python.org)  
- GsTL   (http://pangea.stanford.edu/~nremy/GTL/GsTL_home.html)

Notice that Qt and Coin can not be used in a commercial setting unless you
purchase the appropriate license. 

1) Edit file ".qmake.cache" and modify the path variables. One common mistake when setting the paths in .qmake.cache: the top-level directory of GsTL contains a directory that is also called GsTL and contains the source files. The GSTLHOME variable must be set to the top-level directory, not to the nested GsTL directory. So GSTLHOME=/tmp/GsTL, not /tmp/GsTL/GsTL. Similarily, the top-level directory of SGeMS contains a directory called GsTLAppli. Set GSTLAPPLI_HOME=/tmp/SGeMS, not /tmp/SGeMS/GsTLAppli.
2) If you want to compile in release mode, edit "config.qmake" and
   change line:
      CONFIG +=  debug warn_on
   to
      CONFIG +=  release warn_on
   (remove "warn_on" to decrease the number of compiler warnings) 
3) run qmake (just type "qmake") to generate the top-level makefile.
4) Finally, run make.
5) The executable will be output to $GSTLAPPLI_HOME/bin/linux/s-gems. It will probably be necessary to set LD_LIBRARY_PATH so linux can find the sgems shared libraries. These libraries are in $GSTLAPPLI_HOME/lib/linux and $GSTLAPPLI_HOME/plugins/designer:
    export LD_LIBRARY_PATH=$GSTLAPPLI_HOME/lib/linux:$GSTLAPPLI_HOME/plugins/designer
Library $GSTLAPPLI_HOME/plugins/designer/libGsTLwidgets.so is a plug-in for Qt. If Qt can't find that plug-in, parts of the interface will be missing. You can copy libGsTLwidgets.so to $QTDIR/plugins/designer, or use qtconfig to add a new plug-ins search path.
6) Before you run the software, define a variable called GSTLAPPLIHOME to
   point to the root directory of S-GeMS .





Generating Makefiles:
-----------------------

Makefiles are generated using qmake and .pro files. All .pro files should already
be there. This part explains how to use shell script "Makemake" to generate the
.pro files and the corresponding Makefiles.
To generate a makefile:
 - define in MMakefile any non-default variable. MMakefile can
     be used to override the target name (TARGET=name), add paths to
     the include path (INCLUDEPATH += /new/path), etc. See qmake help
     for all available options.
 - run: Makemake -a|-l
     Makemake will generate a .pro file and the corresponding makefile.
     Makemake should be rerun each time new source files are added.
     By default Makemake will attempt to compile all the files in the 
     directory. If more than one file contains a main() function, compilation
     will fail. To remove the extra files, put the following line in MMakefile:
       SOURCES -= extra_file.cpp
       HEADERS -= extra_file.h


If your target is an executable, you can also run "make link" to obtain a link
to the compiled executable in the current directory (note that the rule for
"link" is generated by Makemake, so if you don't use Makemake to generate the
makefile, there won't be any "link" rule ).

About

No description, website, or topics provided.

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE.GPL
Unknown
LICENSE.XFREE

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published