Difference between revisions of "Installation"
(40 intermediate revisions by 4 users not shown) | |||
Line 6: | Line 6: | ||
Quick and dirty instructions: | Quick and dirty instructions: | ||
+ | # Log into the SUMO lab website with the account information mailed to you and download the toolbox | ||
# Unzip the toolbox zip file, it will create a directory (= the toolbox installation directory) | # Unzip the toolbox zip file, it will create a directory (= the toolbox installation directory) | ||
− | # Unzip the activation zip file | + | <!-- # Unzip the activation zip file '''INTO the toolbox installation directory''' (this file was mailed to you after you registered) --> |
# Start Matlab | # Start Matlab | ||
# Go to the toolbox directory | # Go to the toolbox directory | ||
Line 16: | Line 17: | ||
=== Toolbox === | === 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 | + | 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. |
− | * <code><installation directory></code> | + | Once you have unzipped the toolbox zip file the directory structure looks like this: |
+ | |||
+ | * <code><toolbox installation directory> ''(e.g., c:\software\SUMO-Toolbox-6.3)''</code> | ||
** <code>bin/</code> : binaries, executable scripts, ... | ** <code>bin/</code> : binaries, executable scripts, ... | ||
** <code>config/</code> : configuration files, location of <code>default.xml</code> | ** <code>config/</code> : configuration files, location of <code>default.xml</code> | ||
Line 29: | Line 32: | ||
** <code>examples/</code> : project directories of different examples (you can test with these problems and use them as an example to [[Adding an example|add your own]]) | ** <code>examples/</code> : project directories of different examples (you can test with these problems and use them as an example to [[Adding an example|add your own]]) | ||
+ | <!-- | ||
=== Activation file === | === Activation file === | ||
− | Once you have received the activation file simply unzip it in your toolbox | + | Once you have received the activation file simply unzip it '''INTO''' in your toolbox installation directory. So place the zip file in the toolbox installation directory and unzip it there, it should place all files in the correct places (see also the README file in the activation zip). DO NOT unzip the activation file into its own directory somewhere else. Make sure you restart Matlab (if it was running) after you have done this. |
=== Extension pack === | === Extension pack === | ||
− | There are a number of third party tools and modeling libraries that the SUMO Toolbox can use but that we cannot distribute together with the toolbox. These have been | + | There are a number of third party tools and modeling libraries that the SUMO Toolbox can use but that we cannot distribute together with the toolbox. These have been bundled in an extension pack. Only minor patches have been made to the original code to make them work better with SUMO (e.g., remove debug output). To install the extension pack, download the zip file, and unzip it INTO your toolbox installation directory. The files should be placed in the correct directories. Simply re-run 'startup' to make Matlab aware of the new files. |
If you download and/or use these files please respect their licenses (found in doc/licenses), '''THIS IS YOUR RESPONSIBILITY !!!'''. | If you download and/or use these files please respect their licenses (found in doc/licenses), '''THIS IS YOUR RESPONSIBILITY !!!'''. | ||
+ | --> | ||
+ | === Setup === | ||
− | + | Setting up the toolbox is very easy. Start Matlab, navigate to the toolbox installation directory (not anywhere else, this is important!!) and run '<code>startup</code>'. | |
− | Setting up the toolbox is very easy. Start Matlab, navigate to the toolbox installation directory and run '<code>startup</code>'. | ||
− | |||
− | |||
− | + | === 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 <code><SUMO-Toolbox-installation-dir>/config/default.xml</code>. | |
− | # Make sure that you are in the toolbox | + | # Make sure that you are in the toolbox installation directory and you have run '<code>startup</code>' (see above) |
# Type '<code>go</code>' and press enter. | # Type '<code>go</code>' and press enter. | ||
− | # The toolbox will start to model the ''Academic2DTwice'' simulator. This simulator has 2 inputs and 2 outputs, and will be modeled using | + | # 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 [[Measures#CrossValidation| CrossValidation]], and samples selected using a combined sample selection method. |
# To see the exact settings used open <code>config/default.xml</code>. Feel free to edit this file and play around with the different options. | # To see the exact settings used open <code>config/default.xml</code>. 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 the [[ | + | 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 == | == Problems == | ||
See the [[reporting problems]] page. | See the [[reporting problems]] page. | ||
− | |||
− | |||
− | |||
− | |||
== Optional: Compiling libraries == | == Optional: Compiling libraries == | ||
Line 75: | Line 75: | ||
## <code>MATLABDIR=/path/to/your/matlab/installation</code> | ## <code>MATLABDIR=/path/to/your/matlab/installation</code> | ||
## <code>JAVA_HOME=/path/to/your/SDK/installation</code> | ## <code>JAVA_HOME=/path/to/your/SDK/installation</code> | ||
− | # Go to the toolbox | + | # 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. | ||
+ | ## 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: | ||
{| style="margin: 1em auto 1em auto" border="1" | {| style="margin: 1em auto 1em auto" border="1" | ||
Line 81: | Line 87: | ||
! Package | ! Package | ||
! Description | ! Description | ||
− | |||
|- | |- | ||
| contrib | | contrib | ||
− | | Builds the FANN, SVM (libsvm | + | | Builds the FANN, SVM (libsvm) and NNSYSID libraries |
− | |||
|- | |- | ||
| cexamples | | cexamples | ||
| Builds the binaries for several C/C++ simulators | | 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 [[FAQ#When_using_FANN_models_I_sometimes_get_.22Invalid_MEX-file_createFann.mexa64.2C_libfann.so.2:_cannot_open_shared_object_file:_No_such_file_or_directory..22 | the FAQ]]. | ||
=== Windows === | === Windows === | ||
Line 96: | Line 101: | ||
# Compiling C/C++ codes (examples): | # Compiling C/C++ codes (examples): | ||
## You will have to do this on your own using a C/C++ compiler of your choice: Dev-c++/Visual Studio/... | ## You will have to do this on your own using a C/C++ compiler of your choice: Dev-c++/Visual Studio/... | ||
− | # Compiling SVM libraries: | + | # Compiling LS-SVM libraries: |
− | ## In order to use the [http://www.esat.kuleuven.be/sista/lssvmlab/ 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 | + | ## In order to use the [http://www.esat.kuleuven.be/sista/lssvmlab/ 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). |
− | ## This can be done using the built-in LCC compiler of matlab, by calling '<code>makeLSSVM</code>' from the Matlab command prompt | + | ## This can be done using the built-in LCC compiler of matlab, by calling '<code>makeLSSVM</code>' from the Matlab command prompt (make sure the SUMO Toolbox is in your path) |
# Compiling ANN libraries: | # Compiling ANN libraries: | ||
## In order to use the [http://leenissen.dk/fann/ FANN] backend, you will have to compile the FANN library and mex files. | ## In order to use the [http://leenissen.dk/fann/ FANN] backend, you will have to compile the FANN library and mex files. | ||
## 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) | ||
+ | ## open Eclipse | ||
+ | ## import ant buildfile | ||
+ | ### File->New->Other | ||
+ | ### Java->Java Project from Existing Ant Buildfile | ||
+ | ### Select build.xml in the SUMO root directory | ||
+ | ### click 'Finish' | ||
+ | ### 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:
- Log into the SUMO lab website with the account information mailed to you and download the toolbox
- Unzip the toolbox zip file, it will create a directory (= the toolbox installation directory)
- Start Matlab
- Go to the toolbox directory
- Run '
startup
' - 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 ofdefault.xml
config/demo
: a couple of demo configuration files that may help youdoc/
: some documentationdoc/apidoc
: Javadoc and other api docslib/
: required libraries (eg: dom4j)output/
: some output may be placed here (e.g., a global log file)src/
: all source codeexamples/
: 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
.
- Make sure that you are in the toolbox installation directory and you have run '
startup
' (see above) - Type '
go
' and press enter. - 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.
- 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
- Ensure you have the following environment variables set:
MATLABDIR=/path/to/your/matlab/installation
JAVA_HOME=/path/to/your/SDK/installation
- 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 '
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.- 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,
SDKROOT='/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/'
- It is also advisable to change the entry for
CC
fromgcc-4.2
to justgcc
.
- 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.
- 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,
- 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
- Compiling C/C++ codes (examples):
- You will have to do this on your own using a C/C++ compiler of your choice: Dev-c++/Visual Studio/...
- Compiling LS-SVM libraries:
- 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).
- 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)
- Compiling ANN libraries:
- In order to use the FANN backend, you will have to compile the FANN library and mex files.
- 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)
- open Eclipse
- import ant buildfile
- File->New->Other
- Java->Java Project from Existing Ant Buildfile
- Select build.xml in the SUMO root directory
- click 'Finish'
- 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