Installation » History » Version 31
S. Wrede, 06/28/2011 09:19 PM
1 | 1 | S. Wrede | h1. Installation |
---|---|---|---|
2 | 1 | S. Wrede | |
3 | 31 | S. Wrede | * [[Installation/C++]] |
4 | 31 | S. Wrede | |
5 | 21 | J. Wienke | h2. C++ |
6 | 1 | S. Wrede | |
7 | 21 | J. Wienke | h3. External Dependencies |
8 | 21 | J. Wienke | |
9 | 6 | S. Wrede | * Boost (mostly dependencies of RSC library), in particular |
10 | 6 | S. Wrede | ** boost::uuid (can be installed from GAR installer via contrib/boost.uuid, maverick: libboost1.42-dev) |
11 | 6 | S. Wrede | ** libboost-thread-dev |
12 | 1 | S. Wrede | ** libboost-filesystem-dev |
13 | 18 | J. Wienke | ** libboost-signals-dev |
14 | 1 | S. Wrede | * Google Protocol Buffers (ubuntu lucid package is ok, can also be installed from GAR installer via contrib/protobuf), in particular |
15 | 1 | S. Wrede | ** libprotobuf-dev |
16 | 1 | S. Wrede | ** protobuf-compiler |
17 | 21 | J. Wienke | * Optional: |
18 | 21 | J. Wienke | ** Doxygen for documentation generation (ubuntu package) |
19 | 21 | J. Wienke | ** lcov for coverage report (ubuntu package) |
20 | 1 | S. Wrede | |
21 | 6 | S. Wrede | Up to this step, in Maverick installing the dependencies should be as simple as: |
22 | 6 | S. Wrede | <pre> |
23 | 6 | S. Wrede | sudo apt-get install libprotobuf-java libprotobuf-dev protobuf-compiler libboost-thread-dev libboost-filesystem-dev libboost-signals-dev libboost-program-options-dev libboost-regex-dev libboost1.42-dev |
24 | 6 | S. Wrede | </pre> |
25 | 1 | S. Wrede | |
26 | 6 | S. Wrede | * Spread Toolkit for Spread multicast transport extension (lucid ubuntu package does *not* work, due to outdated version 3) |
27 | 6 | S. Wrede | ** Can be installed through GAR installer via contrib/spread or from source |
28 | 1 | S. Wrede | |
29 | 28 | J. Moringen | h3. Installation of RSC, RSBProtocol and RSB |
30 | 1 | S. Wrede | |
31 | 28 | J. Moringen | * Check RSB and its immediate dependencies from the Subversion repository: |
32 | 27 | R. Haschke | ** RSC: https://code.cor-lab.org/svn/rsc/trunk/rsc |
33 | 1 | S. Wrede | ** RSB Protocol: https://code.cor-lab.org/svn/rsb/trunk/protocol |
34 | 1 | S. Wrede | ** RSB C++: https://code.cor-lab.org/svn/rsb/trunk/cpp/core |
35 | 28 | J. Moringen | * CMake is required to configure the projects. |
36 | 28 | J. Moringen | * Build and install the RSB C++ core and its dependencies (in the order given below): |
37 | 28 | J. Moringen | *# Build and install RSC Library: |
38 | 1 | S. Wrede | <pre> |
39 | 28 | J. Moringen | cd rsc/build && cmake .. -DCMAKE_INSTALL_PREFIX=$prefix && make && make install |
40 | 28 | J. Moringen | </pre> |
41 | 28 | J. Moringen | *# Install RSB Protocol Definitions |
42 | 28 | J. Moringen | <pre> |
43 | 28 | J. Moringen | cd protocol/build && cmake .. -DCMAKE_INSTALL_PREFIX=$prefix && make && make install |
44 | 28 | J. Moringen | </pre> |
45 | 28 | J. Moringen | _Note: these protocol definitions are shared across programming languages._ |
46 | 28 | J. Moringen | *# Build and install RSB C++ Core |
47 | 28 | J. Moringen | <pre> |
48 | 30 | J. Moringen | cd core/build && cmake .. -DCMAKE_INSTALL_PREFIX=$prefix -DRSC_DIR=$prefix/share/RSC && make && make install |
49 | 1 | S. Wrede | </pre> |
50 | 1 | S. Wrede | |
51 | 21 | J. Wienke | h2. Python |
52 | 1 | S. Wrede | |
53 | 21 | J. Wienke | h3. External Dependencies |
54 | 1 | S. Wrede | |
55 | 1 | S. Wrede | * install python setuptools and python-dev |
56 | 21 | J. Wienke | * spread-python (e.g. via GAR installer, sources can be downloaded here: http://www.spread.org/files/SpreadModule-1.5spread4.tgz, the version automatically installed by setuptools is NOT working!) |
57 | 21 | J. Wienke | * python-protobuf (via ubuntu package python-protobuf or protobuf sources) |
58 | 1 | S. Wrede | |
59 | 21 | J. Wienke | h3. Installation |
60 | 21 | J. Wienke | |
61 | 21 | J. Wienke | * get sources |
62 | 21 | J. Wienke | * edit setup.cfg and replace protocolroot with the path to the RSBPRobotocol files (e.g. protocolroot=${prefix}/share/rsbprotocol) |
63 | 21 | J. Wienke | |
64 | 1 | S. Wrede | <pre> |
65 | 21 | J. Wienke | export PYTHONPATH=$prefix/lib/python2.6/site-packages |
66 | 1 | S. Wrede | python setup.py build |
67 | 21 | J. Wienke | python setup.py install --prefix=$prefix |
68 | 1 | S. Wrede | </pre> |
69 | 12 | S. Wrede | |
70 | 21 | J. Wienke | Afterwards, @import rsb@ should be possible in a python shell. |
71 | 14 | S. Wrede | |
72 | 21 | J. Wienke | h2. Java |
73 | 2 | J. Wienke | |
74 | 21 | J. Wienke | h3. External Dependencies |
75 | 21 | J. Wienke | |
76 | 21 | J. Wienke | * libprotobuf-java |
77 | 21 | J. Wienke | * ant |
78 | 21 | J. Wienke | * Optional: |
79 | 21 | J. Wienke | ** javadoc |
80 | 21 | J. Wienke | |
81 | 21 | J. Wienke | h3. Installation |
82 | 21 | J. Wienke | |
83 | 1 | S. Wrede | * Download src from SVN (see front page) |
84 | 1 | S. Wrede | * cd src and edit build.properties according to your installation |
85 | 21 | J. Wienke | * @ant install@ installs jars to prefix of your choice, e.g., ${prefix}/share/java (defined via property) |
86 | 1 | S. Wrede | * for rsb-xml you also need to install XOM (included in RSBJava src or via ubuntu) |
87 | 22 | J. Moringen | |
88 | 23 | J. Moringen | h2. Common Lisp |
89 | 1 | S. Wrede | |
90 | 23 | J. Moringen | h3. External Dependencies |
91 | 23 | J. Moringen | |
92 | 22 | J. Moringen | | *System* | *Required* | *Obtainable From* | |
93 | 22 | J. Moringen | | alexandria | yes | "Quicklisp":http://www.quicklisp.org/ | |
94 | 22 | J. Moringen | | split-sequence | yes | Quicklisp | |
95 | 22 | J. Moringen | | iterate | yes | Quicklisp | |
96 | 22 | J. Moringen | | metabang-bind | yes | Quicklisp | |
97 | 22 | J. Moringen | | bordeaux-threads | yes | Quicklisp | |
98 | 22 | J. Moringen | | closer-mop | yes | Quicklisp | |
99 | 22 | J. Moringen | | log5 | yes | Quicklisp | |
100 | 22 | J. Moringen | | puri | yes | Quicklisp | |
101 | 22 | J. Moringen | | uuid | yes | Quicklisp | |
102 | 26 | J. Moringen | | local-time | yes | Quicklisp | |
103 | 22 | J. Moringen | | cl-hooks | yes | https://launchpad.net/cl-hooks | |
104 | 22 | J. Moringen | | cl-dynamic-classes | yes | "RSB Repository":https://code.cor-lab.org/svn/rsb/trunk/cl/cl-dynamic-classes/ | |
105 | 22 | J. Moringen | | cxml-stp | for XML event data | Quicklisp | |
106 | 22 | J. Moringen | | xpath | for XPath event filtering | Quicklisp | |
107 | 22 | J. Moringen | | cl-protobuf | for Spread transport | "RSB Repository":https://code.cor-lab.org/svn/rsb/trunk/cl/cl-protobuf/ | |
108 | 1 | S. Wrede | | cl-spread | for Spread transport | "RSB Repository":https://code.cor-lab.org/svn/rsb/trunk/cl/cl-spread/ | |
109 | 24 | J. Moringen | | -- libspread | for Spread transport | See C++ installation instructions | |
110 | 23 | J. Moringen | |
111 | 23 | J. Moringen | h3. Installation |
112 | 25 | J. Moringen | |
113 | 25 | J. Moringen | # Download systems from Subversion repository: |
114 | 25 | J. Moringen | #* @cl-rsb@: @svn export https://code.cor-lab.org/svn/rsb/trunk/cl/cl-rsb/@ |
115 | 25 | J. Moringen | #* @cl-dynamic-classes@: @svn export https://code.cor-lab.org/svn/rsb/trunk/cl/cl-dynamic-classes/@ |
116 | 25 | J. Moringen | #* @cl-protobuf@: @svn export https://code.cor-lab.org/svn/rsb/trunk/cl/cl-protobuf/@ |
117 | 25 | J. Moringen | #* @cl-spread@: @svn export https://code.cor-lab.org/svn/rsb/trunk/cl/cl-spread/@ |
118 | 25 | J. Moringen | # Download other required systems: |
119 | 25 | J. Moringen | #* @cl-hooks@: @bzr branch lp:cl-hooks@ |
120 | 25 | J. Moringen | # Load @cl-rsb@ with Quicklisp to pull in remaining dependencies: |
121 | 25 | J. Moringen | @(ql:quickload :cl-rsb)@ |