Difference between revisions of "Installation"

From SUMOwiki
Jump to navigationJump to search
 
(8 intermediate revisions by 3 users not shown)
Line 68: Line 68:
 
== Optional: Compiling libraries ==
 
== Optional: Compiling libraries ==
  
There are some alternative libraries and simulators available that have to be compiled for your specific platform. Instructions depend on your operating system.  Ensure you have installed the extension pack before continuing.
+
There are some alternative libraries and simulators available that have to be compiled for your specific platform. Instructions depend on your operating system.
  
 
=== Linux/Unix/OSX ===
 
=== Linux/Unix/OSX ===
Line 77: Line 77:
 
# Ensure you have the usual build tools installed: gcc, g++, autotools, make, etc
 
# Ensure you have the usual build tools installed: gcc, g++, autotools, make, etc
 
# From the command line shell (so NOT from inside Matlab): Go to the toolbox installation directory and type '<code>make</code>'. This will build everything for you (C/C++ files, SVM libraries, ...).  If you only want to build certain packages simply '<code>make Package</code>' in the toolbox installation directory.  
 
# From the command line shell (so NOT from inside Matlab): Go to the toolbox installation directory and type '<code>make</code>'. This will build everything for you (C/C++ files, SVM libraries, ...).  If you only want to build certain packages simply '<code>make Package</code>' in the toolbox installation directory.  
## Note: if this is giving you problems, and you just want to compile the LS-SVMs you can try running makeLSSVM from inside Matlab (see the Windows instructions below)
+
## For Matlab versions R2011a and above, in case your operating system is Mac OS X (version 10.6 - Snow Leopard upwards), and the C compiler being used is Xcode version 4.1 and above, you will need to install a patch from MathWorks, please refer to [http://www.mathworks.nl/support/solutions/en/data/1-FR6LXJ/ this]. You will also need to update the SDKROOT entry in mexopts.sh file (usually located in ~/.matlab/R2012b/mexopts.sh), according to its location in the filesystem as it has been moved in recent versions of OS X. For example, for OS X Lion the updated entry should be,
 +
###<code>SDKROOT='/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/'</code>
 +
### It is also advisable to change the entry for <code>CC</code> from <code>gcc-4.2</code> to just <code>gcc</code>.
 +
## If you encounter the message "This process is attempting to exclude an item from Time Machine by path without administrator privileges. This is not supported." on Mac OS X while building the code, building it as a super-user by using the command '<code>sudo make</code>' instead of only '<code>make</code>' will solve the problem.
 
# A complete list of available packages follows:
 
# A complete list of available packages follows:
 
  
 
{| style="margin: 1em auto 1em auto" border="1"
 
{| style="margin: 1em auto 1em auto" border="1"
Line 85: Line 87:
 
! Package
 
! Package
 
! Description
 
! Description
! Requires extension pack
 
 
|-
 
|-
 
| contrib
 
| contrib
| Builds the FANN, SVM (libsvm, LS-SVMlab) and NNSYSID libraries
+
| Builds the FANN, SVM (libsvm) and NNSYSID libraries
| Yes
 
 
|-
 
|-
 
| cexamples
 
| cexamples
 
| Builds the binaries for several C/C++ simulators
 
| Builds the binaries for several C/C++ simulators
| No
 
 
|}
 
|}
  
Line 109: Line 108:
 
## So far nobody has yet got it to work under Windows, but don't let that stop you.
 
## So far nobody has yet got it to work under Windows, but don't let that stop you.
 
# Compiling Java classes using Eclipse (only for SVN version of the Toolbox, on linux you can just use the make command)
 
# Compiling Java classes using Eclipse (only for SVN version of the Toolbox, on linux you can just use the make command)
## open eclipse
+
## open Eclipse
 
## import ant buildfile
 
## import ant buildfile
 
### File->New->Other
 
### File->New->Other
 
### Java->Java Project from Existing Ant Buildfile
 
### Java->Java Project from Existing Ant Buildfile
 
### Select build.xml in the SUMO root directory
 
### Select build.xml in the SUMO root directory
### Finish
+
### click 'Finish'
## Open configure.m and change bin/ to src/
+
### Add external jars from Matlab install to buildpath if necessary
 +
## Open configure.m in the SUMO root directory and change bin/ to src/ for the java paths (the lines below ''% add java paths'')
 +
## Type in 'go' in the Matlab command line to see whether the compilation worked
 +
## If the SUMO Toolbox does not start, make sure the java virtual machine of matlab and eclipse are the same
 +
### Type in 'version('-java')' in the Matlab command line to find the jvm version used by matlab
 +
### In Eclipse, right click the SUMO-Toolbox project -> Properties  -> Java Compiler
 +
### Change the Java Compiler used by Eclipse by ticking the 'Enable project specific settings' and selecting the same version of the Java Compiler as the Matlab jvm

Latest revision as of 08:27, 28 August 2014

Introduction

This page will walk you through the SUMO Toolbox installation. Please refer to the system requirements first. See the downloading section on how to download the toolbox.

Quick start

Quick and dirty instructions:

  1. Log into the SUMO lab website with the account information mailed to you and download the toolbox
  2. Unzip the toolbox zip file, it will create a directory (= the toolbox installation directory)
  3. Start Matlab
  4. Go to the toolbox directory
  5. Run 'startup'
  6. Run 'go'

Basic Installation

Toolbox

Unzip the toolbox zip file to a directory somewhere on your harddisk, the full path of the SUMO Toolbox (including installation directory) will be referred to as the toolbox installation directory (e.g., c:\software\SUMO-Toolbox-6.3). Note that you do not have to put the toolbox in the Matlab installation directory, we actually advise against it since it can cause confusing errors.

Once you have unzipped the toolbox zip file the directory structure looks like this:

  • <toolbox installation directory> (e.g., c:\software\SUMO-Toolbox-6.3)
    • bin/ : binaries, executable scripts, ...
    • config/ : configuration files, location of default.xml
    • config/demo : a couple of demo configuration files that may help you
    • doc/ : some documentation
    • doc/apidoc : Javadoc and other api docs
    • lib/ : required libraries (eg: dom4j)
    • output/ : some output may be placed here (e.g., a global log file)
    • src/ : all source code
    • examples/ : project directories of different examples (you can test with these problems and use them as an example to add your own)

Setup

Setting up the toolbox is very easy. Start Matlab, navigate to the toolbox installation directory (not anywhere else, this is important!!) and run 'startup'.

Test run

To ensure everything is working you can do a simple run of the toolbox with the default configuration. This means the toolbox will use the setting specified in <SUMO-Toolbox-installation-dir>/config/default.xml.

  1. Make sure that you are in the toolbox installation directory and you have run 'startup' (see above)
  2. Type 'go' and press enter.
  3. The toolbox will start to model the Academic2DTwice simulator. This simulator has 2 inputs and 2 outputs, and will be modeled using Kriging models, scored using CrossValidation, and samples selected using a combined sample selection method.
  4. To see the exact settings used open config/default.xml. Feel free to edit this file and play around with the different options.

The examples directory contains many example simulators that you can use to test the toolbox with. See Running#Running_different_examples.

Ok, the test run works, now what?

See Running page.

Problems

See the reporting problems page.

Optional: Compiling libraries

There are some alternative libraries and simulators available that have to be compiled for your specific platform. Instructions depend on your operating system.

Linux/Unix/OSX

  1. Ensure you have the following environment variables set:
    1. MATLABDIR=/path/to/your/matlab/installation
    2. JAVA_HOME=/path/to/your/SDK/installation
  2. Ensure you have the usual build tools installed: gcc, g++, autotools, make, etc
  3. From the command line shell (so NOT from inside Matlab): Go to the toolbox installation directory and type 'make'. This will build everything for you (C/C++ files, SVM libraries, ...). If you only want to build certain packages simply 'make Package' in the toolbox installation directory.
    1. For Matlab versions R2011a and above, in case your operating system is Mac OS X (version 10.6 - Snow Leopard upwards), and the C compiler being used is Xcode version 4.1 and above, you will need to install a patch from MathWorks, please refer to this. You will also need to update the SDKROOT entry in mexopts.sh file (usually located in ~/.matlab/R2012b/mexopts.sh), according to its location in the filesystem as it has been moved in recent versions of OS X. For example, for OS X Lion the updated entry should be,
      1. SDKROOT='/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/'
      2. It is also advisable to change the entry for CC from gcc-4.2 to just gcc.
    2. If you encounter the message "This process is attempting to exclude an item from Time Machine by path without administrator privileges. This is not supported." on Mac OS X while building the code, building it as a super-user by using the command 'sudo make' instead of only 'make' will solve the problem.
  4. A complete list of available packages follows:
Package Description
contrib Builds the FANN, SVM (libsvm) and NNSYSID libraries
cexamples Builds the binaries for several C/C++ simulators

Note: if you want to use FANN you will have to ensure Matlab knows of the FANN libraries. See the FAQ.

Windows

  1. Compiling C/C++ codes (examples):
    1. You will have to do this on your own using a C/C++ compiler of your choice: Dev-c++/Visual Studio/...
  2. Compiling LS-SVM libraries:
    1. In order to use the LS-SVM backend, you will have to compile the LS-SVM mex files (it will work if you dont but you will get a lot of warning messages about a missing CFile implementation).
    2. This can be done using the built-in LCC compiler of matlab, by calling 'makeLSSVM' from the Matlab command prompt (make sure the SUMO Toolbox is in your path)
  3. Compiling ANN libraries:
    1. In order to use the FANN backend, you will have to compile the FANN library and mex files.
    2. So far nobody has yet got it to work under Windows, but don't let that stop you.
  4. Compiling Java classes using Eclipse (only for SVN version of the Toolbox, on linux you can just use the make command)
    1. open Eclipse
    2. import ant buildfile
      1. File->New->Other
      2. Java->Java Project from Existing Ant Buildfile
      3. Select build.xml in the SUMO root directory
      4. click 'Finish'
      5. Add external jars from Matlab install to buildpath if necessary
    3. Open configure.m in the SUMO root directory and change bin/ to src/ for the java paths (the lines below % add java paths)
    4. Type in 'go' in the Matlab command line to see whether the compilation worked
    5. If the SUMO Toolbox does not start, make sure the java virtual machine of matlab and eclipse are the same
      1. Type in 'version('-java')' in the Matlab command line to find the jvm version used by matlab
      2. In Eclipse, right click the SUMO-Toolbox project -> Properties -> Java Compiler
      3. Change the Java Compiler used by Eclipse by ticking the 'Enable project specific settings' and selecting the same version of the Java Compiler as the Matlab jvm