These instructions are for Micro-Manager 1.4 rather than Micro-Manager 2.0 (which uses JDK 8 and has source code on GitHub rather than in a subversion repository). Instructions for building Micro-Manager 2.0 can be found at Linux installation from source MM2.
Intallation notes to install micro-manager from source on Ubuntu systems. These instructions can also be used without modifications for installations on Debian systems (tested on Debian Wheezy and Debian Jessy).
This page has been updated for the build system changes of r13120, based on testing on Ubuntu 12.04 LTS.
See also: doc/how-to-build.md
in the source tree.
Preparation
Install JDK
If you are building the Micro-Manager Java GUI, Java 1.6 or 1.7 is recommended1. The simplest way is to use OpenJDK:
sudo apt-get install openjdk-6-jdk
(You can also use openjdk-7-jdk
.)
Install ImageJ
Download the Linux version of
ImageJ from the NIH website.
From a terminal, unzip to /usr/local/
, and remove the embedded JRE, as
we already have one installed.
cd ~/Downloads/
sudo unzip ij*-linux*.zip -d /usr/local/
sudo rm -rf /usr/local/ImageJ/jre
sudo chmod a+Xr /usr/local/ImageJ
Install Build Programs and Libraries
You will need a subversion client to checkout the source code, several libraries, and build tools. Install them with:
sudo apt-get install subversion build-essential autoconf automake libtool \
libboost-all-dev zlib1g-dev swig ant
You may also need to install additional packages (for cameras and special hardware). See the full list in Dependencies
Fetch Source Repositories
Create a directory for the the subversion repositories, such as ~/mm
.
Besides the source tree, additional binary dependencies are stored in
the 3rdpartypublic
repository. The build scripts in the source tree
assume 3rdpartypublic
is in the same parent folder level:
mkdir ~/mm
cd ~/mm
svn co https://valelab4.ucsf.edu/svn/micromanager2/trunk/ micro-manager1.4
svn co https://valelab4.ucsf.edu/svn/3rdpartypublic/
This creates 2 new folders in the mm
directory:
~/mm/micro-manager1.4
~/mm/3rdpartypublic
Subversion (svn) will likely complain saying that it cannot verify the https certificate. Typing **t** to temporarily trust the certificate allows to retrieve the repository.
Also, when retrieving large repository (like the 3rdpartypublic/ repository), svn can hung in the middle of the process, with an error message:
svn: REPORT de '/svn/3rdpartypublic/!svn/vcc/default':
Could not read chunk delimiter: Secure connection truncated (https://valelab4.ucsf.edu)
This can be solved by typing:
svn cleanup 3rdpartypublic/
svn update 3rdpartypublic/ # This command might be executed several times
Building Micro-Manager
Create the Autotools files
cd ~/mm/micro-manager1.4
./autogen.sh
./configure --enable-imagej-plugin=/usr/local/ImageJ
Download build dependencies
make fetchdeps # Required since SVN r14001-r14016
Compile
make
Install
sudo make install
Post Install
Editing the startup script
A script named mmimagej
will have been installed in
/usr/local/ImageJ
. You might want to edit its contents to pass extra
flags to Java. You may also want to put this script in your PATH
.
Running Micro-Manager
Start Micro-Manager by typing:
/usr/local/ImageJ/mmimagej 2>&1 >/dev/null &
To view the Core logging in the terminal while Micro-Manager is running, start simply as:
/usr/local/ImageJ/mmimagej
Appendix
Dependencies
Name | Equivalent Synaptic package name |
---|---|
Required Dependencies: | |
Subversion | subversion |
GNU C++ | build-essential |
GNU Autotools | autoconf , automake |
GNU Libtool | libtool |
Boost libraries | libboost-all-dev |
zlib compression library | zlib1g-dev |
Simplified Wrapper and Interface Library | swig |
OpenJDK | openjdk-6-jdk or openjdk-7-jdk |
Optional Dependencies: | |
Python | python-dev , python-numpy-dev |
Firewire Camera Library | libdc1394-*-dev |
Open Source Computer Vision Library | libopencv-dev |
GPhoto2 | libgphoto2-2-dev |
FreeImagePlus (used by GPhoto device adapter) | libfreeimage-dev |
libusb 0.1 | libusb-dev |
Andor SDK 2/3 | N/A - request from Andor website |
You need the following packages: