Installation » History » Version 13

M. Rolf, 01/24/2013 12:26 PM

1 1 Anonymous
2 1 Anonymous
3 11 M. Rolf
h1. Dependencies
4 1 Anonymous
5 10 M. Rolf
{{>toc}}
6 1 Anonymous
7 11 M. Rolf
NemoMath depends of the following tools and libraries, which are by default installed on all recent Ubuntu Linux configurations:
8 11 M. Rolf
9 13 M. Rolf
* Build system: "CMake":http://www.cmake.org/ (if you install NemoMath from source)
10 11 M. Rolf
* Libraries:
11 11 M. Rolf
12 11 M. Rolf
 # "Boost":http://www.boost.org/ (header-only parts) (on ubuntu: _libboost-dev_, _libboost-test-dev_)
13 11 M. Rolf
 # "Eigen 2":http://eigen.tuxfamily.org/index.php?title=Main_Page (on ubuntu:  _libeigen2-dev_) *or* "Eigen 3":http://eigen.tuxfamily.org/index.php?title=Main_Page
14 11 M. Rolf
15 11 M. Rolf
h1. Supported Platforms and Compilers
16 11 M. Rolf
17 11 M. Rolf
NemoMath is a cross-platform, cross-compiler library which is tested and maintained for the most frequently used system configurations:
18 11 M. Rolf
19 11 M. Rolf
h3. Operating System Support
20 11 M. Rolf
21 11 M. Rolf
* Supported: 
22 11 M. Rolf
23 11 M. Rolf
 # Linux, Ubuntu 10.04 and newer
24 11 M. Rolf
 # Mac OS 10.7 and newer
25 11 M. Rolf
 # Windows 7 and newer
26 11 M. Rolf
27 11 M. Rolf
28 11 M. Rolf
h3. Compiler Support
29 10 M. Rolf
 
30 10 M. Rolf
* Supported: 
31 10 M. Rolf
32 10 M. Rolf
 # GCC from version 4.3, 32/64bit (tested on Ubuntu Linux)
33 8 M. Rolf
 # CLang3.0 (tested on MacOS)
34 6 M. Rolf
 # MSVC 2010 or newer (tested on Windows 7)
35 1 Anonymous
* Not supported (and known not to work): 
36 6 M. Rolf
37 8 M. Rolf
 # GCC version 4.2, or older 
38 1 Anonymous
 # MSVC 2008 or older
39 8 M. Rolf
40 1 Anonymous
h3. Test configurations 
41 9 M. Rolf
42 1 Anonymous
These configurations are permanently tested and known to work:
43 1 Anonymous
* Windows 7, Microsoft Visual Studio 2010, Boost 1.44.0, Eigen 2
44 1 Anonymous
* Mac OS 10.7 "Lion" 64bit, Clang 2.1.0, Boost 1.47.0, Eigen 3.1.0
45 1 Anonymous
* Ubuntu Linux 10.04 "Lucid Lynx" 32bit+64bit, GCC 4.4.3, Boost 1.40.0, Eigen 3.0.0
46 1 Anonymous
* Ubuntu Linux 12.04 "Precise Pangolin" 32bit+64bit, GCC 4.6.3, Boost 1.46.1, Eigen 3.0.5
47 1 Anonymous
* Ubuntu Linux 12.10 "Quantal Quetzal" 32bit+64bit, GCC 4.7.2, Boost 1.49.0, Eigen 3.0.93
48 1 Anonymous
49 11 M. Rolf
h1. Pre-Configured Installation 
50 1 Anonymous
51 1 Anonymous
h3. Debian packages
52 1 Anonymous
53 13 M. Rolf
+This is the recommended installation procedure for NemoMath on Ubuntu Systems+.
54 12 Anonymous
55 12 Anonymous
Packages for Ubuntu Linux are constantly built on our continuous integration server for
56 12 Anonymous
* Ubuntu Linux 10.04 "Lucid Lynx" 32bit + 64bit
57 12 Anonymous
* Ubuntu Linux 12.04 "Precise Pangolin" 32bit + 64bit
58 12 Anonymous
* Ubuntu Linux 12.10 "Quantal Quetzal" 32bit + 64bit
59 12 Anonymous
60 12 Anonymous
They can easily be downlaoded from out "Package Server":http://packages.cor-lab.org/. Follow the link to get further instructions.
61 12 Anonymous
62 1 Anonymous
h3. Gar System Installer
63 1 Anonymous
64 1 Anonymous
# Check out CITEC Gar System Installer from https://projects.cit-ec.uni-bielefeld.de/svn/gar-installer/trunk/
65 9 M. Rolf
# Go into sub-folder @cor-lab/NemoMath@
66 8 M. Rolf
# On your console type
67 1 Anonymous
#* @make install@
68 4 S. Wrede
69 1 Anonymous
70 11 M. Rolf
h1. Install from Source
71 11 M. Rolf
72 11 M. Rolf
h3. A "header only" library
73 11 M. Rolf
74 11 M. Rolf
h3. Getting and installing the course
75 11 M. Rolf
76 11 M. Rolf
# Check out SVN https://code.cor-lab.org/svn/nemomath/trunk/nemomath
77 11 M. Rolf
# On your console type
78 11 M. Rolf
<pre>
79 11 M. Rolf
cd nemomath/build && cmake .. -DCMAKE_INSTALL_PREFIX=$prefix && make && make install
80 11 M. Rolf
</pre>
81 1 Anonymous
82 1 Anonymous
h3. Install and Compile Options
83 13 M. Rolf
84 13 M. Rolf
The following options manipulate the way NemoMath works during compilation time:
85 13 M. Rolf
86 13 M. Rolf
* CMake option: @USE_CPP_0X@ (default: @true@)
87 13 M. Rolf
88 13 M. Rolf
  * Enables NemoMath to use C++ features from the latest standard. This option is mandatory except on GCC 4.3, where fallbacks for critical features (declared type of expressions) are available.
89 13 M. Rolf
  * If enabled, @MathVector@ and @Matrix@ instances can be constructed by @C++11@ initialization lists.
90 13 M. Rolf
  * The option can be steered on compiler level by defining the C++ macro @NEMO_HAS_CPP0x@, or not.
91 13 M. Rolf
* CMake option: @ABORT_ON_ERROR@ (default: @false@)
92 13 M. Rolf
93 13 M. Rolf
  * By default, NemoMath throws C++ exceptions in case of runtime errors. This option allows to disable exceptions and call @abort()@ in case of an error.
94 13 M. Rolf
  * In particular on older compilers (e.g. GCC 4.4), this can have a tremendeously positive impact on performance (see Benchmarks in #821). 
95 9 M. Rolf
96 1 Anonymous
h1. Using NemoMath