INSTALL ------------------------------------------------------------------------------- INTRODUCTION ============ This file describes how to install CGAL on Unix-like systems (e.g., Linux, MacOS X, Solaris) as well as on Windows using cygwin. The instructions in this file are for the most common use cases. For further information, or in case of problems, please see the detailed installation instructions, which can be found in the CGAL documentation. The CGAL documentation is available in various formats (HTML, PDF). It is not bundled with the software but can be downloaded separately at . For more information about CGAL, see the . PREREQUISITES ============= To install CGAL, you need several third-party libraries. The mandatory prerequisites are: - CMake (>= 2.4.5), http://www.cmake.org/ - Boost (>= 1.33.1), http://www.boost.org/ If you build boost yourself, or if you use a fine-grained package management system, make sure you have at least Boost.Threads, Boost.Graph and Boost.ProgramOptions (strictly speaking, the last two Boost components are not mandatory, but recommended, as they are used by many demos). - GMP (>= 4.1.4), http://gmplib.org/ - MPFR (>= 2.2.1), http://www.mpfr.org/ The following prerequisites are recommended, as they are required for the visualization functionality of CGAL: - Qt 3.x (>= 3.3), http://trolltech.com/products/ - Qt 4.x (>= 4.2), http://trolltech.com/products/ If you are not interested in visualization, you can ignore Qt 3.x and Qt 4.x. The following prerequisites are optional. They are required or optional for some demos or examples: - TAUCS, http://www.tau.ac.il/~stoledo/taucs/ - BLAS, LAPACK, ATLAS - LEDA (< 6.0), http://www.algorithmic-solutions.com/leda/ - Geomview, http://www.geomview.org/ - libQGlViewer, http://www.libqglviewer.com/ - VTK, http://www.vtk.org/ CONFIGURATION ============= To configure CGAL, type cmake . in the directory that contains this INSTALL file. You can add several options to this command. The most important ones are -DCMAKE_INSTALL_PREFIX= installation directory [/usr/local] -DCMAKE_BUILD_TYPE= build type [Debug] -DBUILD_SHARED_LIBS= shared or static libraries [TRUE] -DCMAKE_C_COMPILER= C compiler [gcc] -DCMAKE_CXX_COMPILER= C++ compiler [g++] In case you want to add additional compiler and linker flags, you can use -DCGAL_CXX_FLAGS additional compiler flags -DCGAL_MODULE_LINKER_FLAGS add. linker flags (static libraries) -DCGAL_SHARED_LINKER_FLAGS add. linker flags (shared libraries) -DCGAL_EXE_LINKER_FLAGS add. linker flags (executables) Variants with the additional suffix "_DEBUG" and "_RELEASE" allow to set separate values for debug and release builds. In case you do not want to add additional flags, but to override the default flags, replace "CGAL" by "CMAKE" in the variable names above. Note that CMake maintains a cache name "CMakeCache.txt". If you change options (or your environment changes), it is best to remove that file to avoid problems. BUILDING ======== To build the CGAL libraries, type make If you want, you can install the CGAL header and libraries. To do so, type make install You can build all demos or examples by typing make demo or make examples If you are interested in the demos or examples of just a particular module, you can build them in the following way: make -C demo/Alpha_shapes_2 (or: cd demo/Alpha_shapes_2; make) make -C examples/Alpha_shapes_2 (or: cd examples/Alpha_shapes_2; make) A list of all available make targets can be obtained by make help OUT-OF-SOURCE BUILDS ==================== The above instructions build the CGAL library in the same directory tree as the CGAL sources. Sometimes it is advisable to place all the generated files somewhere else. For example, if you want to build the library in several configurations (debug and release, different compilers, and so on). Using different build directories keeps all the generated files separated for each configuration. In the following, $CGAL_SRC denotes the directory with the CGAL sources; $CGAL_BIN is an arbitrary directory where the generated files will be placed. You can perform an out-of-source build as follows: mkdir $CGAL_BIN cd $CGAL_BIN cmake [options] $CGAL_SRC make make install (if desired) make demo (if desired) make examples (if desired) Basically, the only difference is the last parameter of the "cmake" command: $CGAL_SRC instead of "." .