Source

PolyBoRi /

Filename Size Date modified Message
Cudd
M4RI
PyPolyBoRi
Singular
doc
groebner
ipbori
pkgs
polybori
pyroot/polybori
testsuite
8.6 KB
17.8 KB
3.4 KB
39.8 KB
4.5 KB
5.9 KB
The PolyBoRi Team:
Michael Brickenstein (MFO), brickenstein@mfo.de
Alexander Dreyer (ITWM), alexander.dreyer@itwm.fraunhofer.de

PolyBoRi is a joint project of the following institutions
* Mathematisches Forschungsinstitut Oberwolfach (MFO), 
  Oberwolfach, Germany,
* University of Kaiserslautern, Department of Mathematics,
  Algebra, Geometry and Computer Algebra Group, 
  Kaiserslautern, Germany, and
* Fraunhofer Institute for Industrial Mathematics (ITWM),
  Department of System Analysis, Prognosis and Control,
  Kaiserslautern, Germany.


Prerequisites:
==============
For building the PolyBoRi framework, the following tools and libraries are
needed:
* gcc 3.3.0 or newer
* python 2.4 (deprecated) or python 2.5 (recommended)
* scons (v0.96 or later, recommended v0.97 or later)
* the boost library, version 1.33.1 (for python 2.4; deprecated) or 
  version 1.34.1 (for python 2.5; recommended)

In addition, for running the ipbori command line tools IPython is needed.


Installation:
=============
Changing to the build directory (where you find this README file), and typing  

  scons install INSTALLDIR=/path/to/program PREFIX=/prefix/for/executables

should be enough to build and install PolyBoRi to /path/to/program/.
In addition, a symbolic link to the 'ipbori' executable will be installed to
/prefix/for/executables/bin. See /path/to/program/doc for documentation. The
default value of INSTALLDIR is $PREFIX/share/polybori, while PREFIX defaults to
/usr/local.

If might also be useful to add some custom setting to the file 'custom.py' in
the build directory, see the following example.

--- custom.py ---
CCFLAGS = "-g -O3  -ansi --pedantic -Wno-long-long -pg"
CXXFLAGS = "$CCFLAGS -ftemplate-depth-100"
LINKFLAGS=" -Xlinker -export-dynamic -pthread -ldl  -pg" 
LIBS=["util"]
# means that this line is not activated.
#LIBPATH = ["/custom/lib/path1", "/custom/lib/path2"]
#CPPPATH = ["/custom/include/path1", "/custom/include/path2"]
#PYPREFIX = 
#PBP = "python"
-----------------


Typing 

  scons devel-install DEVEL-PREFIX=/prefix/for/usr

generates and installs PolyBoRi headers and libraries for developers.


Type 

  scons -h

for more infos about possible custom settings.


Additional targets
==================

Type

  scons <target>

for making other targets by alias. Valid aliases are

distribute      gzipped source tarball
srpm, rpm       generate (source)-rpm from data in pkgs/rpm
prepare-debian  generate debian/ folder from data in pkgs/debian
deb             generate debian package

install         install ipbori, documentation, and python iterface
prepare-install build, what install needs

devel-install   headers and standalone libraries (without python interface)
prepare-devel   build, what devel-install needs

Usage:
======
Provided that /prefix/for/executables/bin is in your path, typing 

  ipbori

starts an IPython session with the PolyBoRi framework loaded.


Workaround for scons 0.96.x
===========================

The currently used CFLAGS/CCFLAGS/CXXFLAGS mechanism was introduced in the 0.97
branch of scons. Using a version from the 0.96 branch CCFLAGS must contain all
flags for the C-compiler, while CXXFLAGS has to carry all flags for CXX.

These settings may be changed using the file custom.py described above. One has
to add the following lines:

CXXFLAGS = "-O3 -std=c++98 -ftemplate-depth-100"
CCFLAGS  = "-O3 -std=c99"

Alternatively, one can append the following lines to custom.py:

CXXFLAGS += " " + CCFLAGS
CCFLAGS += " $CFLAGS"