Changes between Version 3 and Version 4 of Installation
- Timestamp:
- 08/09/11 11:06:04 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Installation
v3 v4 10 10 The core functionality of the MUSCLE is written in Java. To be able to integrate native code with the MUSCLE, there is also a native part which is written in C++. Bootstrapping and platform independent configuration is done with a flexible setup mechanism written in Ruby. 11 11 12 In order to use the MUSCLE, you need a recent Java runtime. You can obtain it at either http://www.java.com/en/download/index.jsp (Sun-Java) or http://openjdk.java.net/ (Open-JDK). Main Java dependencies are already provided in the bundle and do not need to be independently installed.12 In order to use the MUSCLE, you need a recent Java runtime. You can obtain it at either http://www.java.com/en/download/index.jsp (Sun-Java) or http://openjdk.java.net/ (Open-JDK). Main Java third-party dependencies are already provided in the bundle and do not need to be independently installed. 13 13 14 14 A Ruby installation can be downloaded from: [[http://www.ruby-lang.org/en/downloads/] (MUSCLE does currently not work with Ruby 1.9.1 or newer). … … 46 46 47 47 In case you plan to use MUSCLE with native code, you will have to compile the native library part of MUSCLE using a C++ compiler (such as g++). The build script belonging to MUSCLE also has a target to build the native libraries. This requires a C++ compiler and CMake (http://www.cmake.org/) to be available. 48 == What’s in the bundle? ==49 The MUSCLE download bundle contains the following items:50 * '''build''' - This directory contains the compiled Java bytecode and C++ libraries.51 * '''build.rb''' - The build script. It can compile the java sources, build jar archives build the native shared libraries.52 * '''CMakeLists.txt''' - The configuration file for cmake. Only needed if the native libraries are to be built. This file is used by the build.rb, you do not have to call cmake manually.53 * '''doc''' - The documentation files.54 * '''OTF''' - The configuration and helper scripts for OTF trace logger.55 * '''src''' - This directory contains the MUSCLE source code.56 * '''thirdparty''' - The MUSCLE will automatically load third-party libraries which are in this directory.57 48 58 49 == Installation example - Scientific Linux 5.6 == … … 111 102 }}} 112 103 113 5. Set required environment variables, e.g. 114 {{{ 115 #!div style="font-size: 90%" 116 {{{#!sh 117 export JAVA_HOME=/usr/java/jdk1.6.0_26 118 export PATH=$JAVA_HOME/bin:$PATH 119 }}} 120 }}} 121 122 6. Download the muscle bundle from [[http://apps.man.poznan.pl/trac/muscle/downloads|Downloads section]], e.g. 104 5. Download the muscle bundle from [[http://apps.man.poznan.pl/trac/muscle/downloads|Downloads section]], e.g. 123 105 {{{ 124 106 #!div style="font-size: 90%" … … 128 110 }}} 129 111 130 7. Extract the package:112 6. Extract the package: 131 113 {{{ 132 114 #!div style="font-size: 90%" … … 136 118 }}} 137 119 138 8. Recompile entire MUSCLE:120 7. Compile MUSCLE (--target=default recompiles java and c++ stuff): 139 121 {{{ 140 122 #!div style="font-size: 90%" 141 123 {{{#!sh 142 124 cd muscle-1.0.1 143 ./build.rb all125 ./build.rb --target=default --prefix=/opt/muscle 144 126 }}} 145 127 }}} 146 128 147 9. See if the MUSCLE is working:129 8. See if the MUSCLE is working: 148 130 {{{ 149 131 #!div style="font-size: 90%" 150 132 {{{#!sh 151 ./src/ruby/muscle.rb--version133 /opt/muscle/bin/muscle --version 152 134 }}} 153 135 }}} 154 136 155 137 == Sample execution == 156 There are some examples which belong to the MUSCLE bundle. Example code for kernels can be found in the directories java/examples andcpp/examples. There are also prepared configurations for coupled examples CxA (MUSCLE simulations), which can be found in the cxa directory.138 There are some examples provided withing the MUSCLE bundle. Example code for kernels can be found in the directories src/java/examples and src/cpp/examples. There are also prepared configurations for coupled examples CxA (MUSCLE simulations), which can be found in the cxa directory. 157 139 158 140 === Hello World === 159 141 160 142 ==== Sender ==== 161 At java/examples/simplejava/Sender we provide a minimalist kernel written in Java, which sends data (an array of double).143 At src/java/examples/simplejava/Sender we provide a minimalist kernel written in Java, which sends data (an array of double). 162 144 163 145 ==== Receiver ==== 164 At java/examples/simplejava/ConsoleWriter we provide a simple kernel written in Java. It receives data (an array of double) and prints its content to the standard output.146 At src/java/examples/simplejava/ConsoleWriter we provide a simple kernel written in Java. It receives data (an array of double) and prints its content to the standard output. 165 147 166 148 ==== CxA (coupling schema) ==== 167 The configuration cxa/SimpleExample.cxa.rb configures a minimal CxA which couples the java/examples/simplejava/Sender andjava/examples/simplejava/ConsoleWriter kernels.149 The configuration src/cxa/SimpleExample.cxa.rb configures a minimal CxA which couples the src/java/examples/simplejava/Sender and src/java/examples/simplejava/ConsoleWriter kernels. 168 150 169 151 ==== Execution ==== … … 172 154 #!div style="font-size: 90%" 173 155 {{{#!sh 174 ./src/ruby/muscle.rb--cxa_file src/cxa/SimpleExample.cxa.rb --main plumber w r --autoquit156 /opt/muscle/bin/muscel --cxa_file src/cxa/SimpleExample.cxa.rb --main plumber w r --autoquit 175 157 }}} 176 158 }}} 177 159 178 160 == Further reading == 179 For more information how to install and run MUSCLE see doc/muscle_developers_guide.pdf included in the MUSCLE bundle. 180 For more information how to install and run MUSCLE see doc/muscle_developers_guide.pdf. 161 For more information how to use MUSCLE see doc/muscle_developers_guide.pdf included in the MUSCLE bundle.