Version 27 (modified by bartek, 13 years ago) (diff)

--

Installation

The recent bundle of the MUSCLE can be downloaded from the  Downloads section. The bundled package contains the source code of MUSCLE, documentation and precompiled Java archives (jar).

Dependencies

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 highly flexible setup mechanism written in Ruby.

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).

A Ruby installation can be downloaded from:  http://www.ruby-lang.org/en/downloads/. The MUSCLE does currently not work with Ruby 1.9.1 or newer. For ruby 1.8.x the json library is also required - install it with e.g. sudo gem install json. In principle it should be possible to run MUSCLE with JRuby instead of the standard Ruby.

General Instructions

If the dependencies are in place, you are ready to use the MUSCLE. In general no compilation required! Extract the download, e. g.

$ unzip muscle-1.0.1.zip

Change your working directory to the the MUSCLE directory (e. g.)

$ cd muscle-1.0.1

See if the MUSCLE is working correctly

$ ./src/ruby/muscle.rb --version

In case you plan to use the MUSCLE with native code, you will have to compile the native library part of the MUSCLE using a C++ compiler (such as g++). The build script belonging to the MUSCLE also has a target to build the native libraries. This requires a C++ compiler and CMake ( http://www.cmake.org/) to be available. You can also use your favourite IDE/build system instead.

What’s in the bundle?

The MUSCLE download bundle contains the following items:

  • build - This directory contains the compiled Java bytecode and C++ libraries.
  • build.rb - The build script. It can compile the java sources, build jar archives build the native shared libraries.
  • 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.
  • doc - The documentation files.
  • OTF - The configuration and helper scripts for OTF trace logger.
  • src - This directory contains the MUSCLE source code.
  • thirdparty - The MUSCLE will automatically load third-party libraries which are in this directory.

Installation example - Scientific Linux 5.6

  1. Check if proper version of ruby is already installed in the system, otherwise install it:
    ruby --version
    -bash: ruby: command not found
    
    yum install ruby
    ...
    ruby --version
    ruby 1.8.5 (2006-08-25) [x86_64-linux]
    
  1. Check if recent Java SE Runtime Environment (JRE) or Java SE Development Kit (JDK) are present in your system. As the precompiled MUSCLE package is already included at build/muscle.jar you may not need to compile the Java sources and JRE should be sufficient. Hovewer, if you want to recompile the Java part of the MUSCLE (recommended), a recent Java compiler is also required (javac).
    yum install jdk
    
  1. Ensure if you have a c++ compiler available on your system. If you have not, install this:
    yum install gcc-c++
    
  1. Check if cmake is available, otherwise install cmake:

Note: you may need to add an additional repositorium (epel.repo) to the /etc/yum.repos.d. The content of this file may looks as follows:

[epel]
name=Extra Packages for Enterprise Linux 5 - $basearch

#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
yum install cmake
  1. Set required environment variables
    export JAVA_HOME=/usr/java/jdk1.6.0_26
    export PATH=$JAVA_HOME/bin:$PATH
    
  1. Download the muscle bundle from  Downloads section, e.g.
    wget http://apps.man.poznan.pl/trac/muscle/downloads/muscle-1.0.1.zip
    
  1. Extract the package:
    unzip muscle-1.0.1.zip
    
  1. Recompile entire MUSCLE:
    cd muscle-1.0.1
    ./build.rb all
    
  1. See if the MUSCLE is working:
    cd muscle-1.0.1
    ./src/ruby/muscle.rb --version