Difference between revisions of "Micromanager"
(Created page with "===== Java Issues ===== Java needs the following directory, if it doesn't already exist. /etc/.java/.systemPrefs/ Micro-Manager doesn't work well with Icedtea Java. Downlo...") |
|||
(51 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | |||
+ | '''This is for installing Micromanager on a Fedora Linux system''' | ||
+ | |||
+ | ---- | ||
+ | |||
===== Java Issues ===== | ===== Java Issues ===== | ||
Java needs the following directory, if it doesn't already exist. | Java needs the following directory, if it doesn't already exist. | ||
− | /etc/.java/.systemPrefs/ | + | sudo mkdir -p /etc/.java/.systemPrefs/org |
+ | sudo touch /etc/.java/.systemPrefs/.system.lock | ||
+ | sudo touch /etc/.java/.systemPrefs/.systemRootModFile | ||
+ | sudo touch /etc/.java/.systemPrefs/org/prefs.tmp | ||
+ | sudo chmod a+rw /etc/.java/.systemPrefs/org/prefs.tmp | ||
+ | |||
+ | |||
+ | sudo chmod 544 /etc/.java/.systemPrefs/.system.lock | ||
+ | sudo chmod 544 /etc/.java/.systemPrefs/.systemRootModFile | ||
+ | |||
Micro-Manager doesn't work well with Icedtea Java. | Micro-Manager doesn't work well with Icedtea Java. | ||
Line 8: | Line 22: | ||
Download and install Sun's version. | Download and install Sun's version. | ||
− | + | ==== Source code ==== | |
− | cd /storage/big1/kdb/projects/svn/micromanager2/trunk | + | µManager is officially 1.4.*, but they keep the repository in micromanager2/ |
− | svn co https:// | + | |
+ | cd /storage/big1/kdb/projects/micromanager/micromanager1.4/ | ||
+ | svn co https://valelab4.ucsf.edu/svn/micromanager2/trunk/ | ||
+ | |||
+ | cd /storage/big1/kdb/projects/micromanager/micromanager1.4/ | ||
+ | svn co https://valelab4.ucsf.edu/svn/3rdpartypublic/ | ||
+ | |||
+ | ===== Micromanager 1.4 ===== | ||
+ | |||
+ | svn | ||
+ | cd /storage/big1/kdb/projects/micromanager/micromanager2 | ||
+ | svn --username guest --password guest co https://valelab4.ucsf.edu/svn/micromanager2/trunk | ||
+ | |||
+ | ===== Micromanager 2.0 ===== | ||
+ | GitHub | ||
+ | cd /home/kdb/projects | ||
+ | https://valelab4.ucsf.edu/svn/3rdpartypublic/ | ||
+ | git clone -b mm2 https://github.com/micro-manager/micro-manager <directory> | ||
+ | |||
+ | Update | ||
+ | |||
+ | git pull origin mm2 | ||
+ | |||
+ | ===== 3rd Party Installs ===== | ||
+ | |||
+ | yum install zlib-static swig libtool libdc1394-devel gcc gcc-c++ libgphoto2.x86_64 libgphoto2-devel.x86_64 freeimage-devel.x86_64 boost-devel.x86_64 ant.x86_64 python-devel.x86_64 | ||
− | + | ===== bsh ===== | |
− | |||
− | + | copy bsh-2.0b4.jar to /usr/share/java | |
− | + | ln -sf /usr/share/java/bsh-2.0b4.jar /usr/share/java/bsh.jar | |
− | |||
===== dc1394 ===== | ===== dc1394 ===== | ||
need libdc1394-devel installed if you want to use firewire devices | need libdc1394-devel installed if you want to use firewire devices | ||
+ | |||
+ | ===== itc18 ===== | ||
+ | |||
+ | copy the ITC18.h to /usr/local/include/ | ||
+ | copy libitc18.0.1.so to /usr/local/lib | ||
+ | |||
+ | |||
+ | Make a softlink | ||
+ | ln -s /usr/local/lib/libitc18.0.1.so /usr/local/lib/libitc18.so | ||
+ | |||
+ | Make sure /usr/local/lib is in your library path. | ||
+ | |||
+ | if not, add "/etc/ld.so.conf.d/itc18.conf" to /etc/ld.so.conf.d/ with "/usr/local/lib/" as the contents | ||
===== Compiling code ===== | ===== Compiling code ===== | ||
+ | ./autogen.sh | ||
+ | ./configure JNI_CPPFLAGS="-I/usr/java/latest/include -I/usr/java/latest/include/linux" --libdir=/usr/local/lib | ||
+ | |||
+ | ====== VESM and Oxygen ====== | ||
− | ./ | + | ./autogen.sh |
− | ./configure --with- | + | ./configure --with-java="/usr/lib/jvm/java" |
+ | make fetchdeps | ||
make | make | ||
+ | |||
+ | See http://sourceforge.net/p/micro-manager/mailman/message/34561785/ | ||
===== Installation ===== | ===== Installation ===== | ||
Line 36: | Line 93: | ||
As **root**:\\ | As **root**:\\ | ||
I had to mkdir /usr/lib64/micro-manager before running | I had to mkdir /usr/lib64/micro-manager before running | ||
− | make install | + | sudo make install |
− | |||
− | |||
− | |||
− | + | Fix ownerships after root install | |
− | + | sudo chown -R kdb:users . | |
Each user must be part of the <del>UUCP</del> dialout group in order to use the serial ports, perhaps make a udev rule later. | Each user must be part of the <del>UUCP</del> dialout group in order to use the serial ports, perhaps make a udev rule later. | ||
Line 60: | Line 114: | ||
ATTRS{idVendor}=="1482", ATTRS{idProduct}=="0011", MODE="0666" | ATTRS{idVendor}=="1482", ATTRS{idProduct}=="0011", MODE="0666" | ||
+ | # Andor USB and Bitflow cameras | ||
+ | SYSFS{idVendor}=="136e", MODE="0666" | ||
+ | SUBSYSTEM=="video4linux", KERNEL=="video[0-3]*", ATTR{name}=="bitflow", GROUP="users" | ||
+ | |||
+ | # Spectra X-Cite | ||
+ | ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0666" | ||
+ | |||
# "Velleman K8055-0" | # "Velleman K8055-0" | ||
ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5500", MODE="0666" | ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5500", MODE="0666" | ||
Line 102: | Line 163: | ||
/usr/java/latest/bin/java -Xmx10000m -Djava.library.path=$MMDIR -cp $IMAGEJDIR/ij.jar ij.ImageJ | /usr/java/latest/bin/java -Xmx10000m -Djava.library.path=$MMDIR -cp $IMAGEJDIR/ij.jar ij.ImageJ | ||
+ | |||
+ | |||
+ | ===== RPM Build ===== | ||
+ | |||
+ | cd /storage/big1/kdb/projects/micromanager/micromanager2/trunk; svn update | ||
+ | tar --exclude-vcs -cvzf /storage/big1/kdb/public_html/micro-manager/micro-manager-`cat version.txt`.tar.gz ./ | ||
+ | |||
+ | cd /storage/big1/kdb/projects/micromanager/ | ||
+ | tar --exclude-vcs -cvzf /storage/big1/kdb/public_html/micro-manager/3rdpartypublic.tar.gz 3rdpartypublic/classext/ | ||
+ | |||
+ | ./configure JAVAC="/usr/java/latest/bin/javac" JAVA_HOME="/usr/java/latest" JNI_CPPFLAGS="-I/usr/java/latest/include -\I/usr/java/latest/include/linux" --prefix=/usr/ --with-ij-jar=/usr/share/java/imagej.jar |
Latest revision as of 14:44, 23 April 2018
This is for installing Micromanager on a Fedora Linux system
Java Issues
Java needs the following directory, if it doesn't already exist.
sudo mkdir -p /etc/.java/.systemPrefs/org sudo touch /etc/.java/.systemPrefs/.system.lock sudo touch /etc/.java/.systemPrefs/.systemRootModFile sudo touch /etc/.java/.systemPrefs/org/prefs.tmp sudo chmod a+rw /etc/.java/.systemPrefs/org/prefs.tmp sudo chmod 544 /etc/.java/.systemPrefs/.system.lock sudo chmod 544 /etc/.java/.systemPrefs/.systemRootModFile
Micro-Manager doesn't work well with Icedtea Java.
Download and install Sun's version.
Source code
µManager is officially 1.4.*, but they keep the repository in micromanager2/ cd /storage/big1/kdb/projects/micromanager/micromanager1.4/ svn co https://valelab4.ucsf.edu/svn/micromanager2/trunk/ cd /storage/big1/kdb/projects/micromanager/micromanager1.4/ svn co https://valelab4.ucsf.edu/svn/3rdpartypublic/
Micromanager 1.4
svn
cd /storage/big1/kdb/projects/micromanager/micromanager2 svn --username guest --password guest co https://valelab4.ucsf.edu/svn/micromanager2/trunk
Micromanager 2.0
GitHub
cd /home/kdb/projects https://valelab4.ucsf.edu/svn/3rdpartypublic/ git clone -b mm2 https://github.com/micro-manager/micro-manager <directory>
Update
git pull origin mm2
3rd Party Installs
yum install zlib-static swig libtool libdc1394-devel gcc gcc-c++ libgphoto2.x86_64 libgphoto2-devel.x86_64 freeimage-devel.x86_64 boost-devel.x86_64 ant.x86_64 python-devel.x86_64
bsh
copy bsh-2.0b4.jar to /usr/share/java
ln -sf /usr/share/java/bsh-2.0b4.jar /usr/share/java/bsh.jar
dc1394
need libdc1394-devel installed if you want to use firewire devices
itc18
copy the ITC18.h to /usr/local/include/ copy libitc18.0.1.so to /usr/local/lib
Make a softlink
ln -s /usr/local/lib/libitc18.0.1.so /usr/local/lib/libitc18.so
Make sure /usr/local/lib is in your library path.
if not, add "/etc/ld.so.conf.d/itc18.conf" to /etc/ld.so.conf.d/ with "/usr/local/lib/" as the contents
Compiling code
./autogen.sh ./configure JNI_CPPFLAGS="-I/usr/java/latest/include -I/usr/java/latest/include/linux" --libdir=/usr/local/lib
VESM and Oxygen
./autogen.sh ./configure --with-java="/usr/lib/jvm/java" make fetchdeps make
See http://sourceforge.net/p/micro-manager/mailman/message/34561785/
Installation
chmod a+rw config.log
As **root**:\\ I had to mkdir /usr/lib64/micro-manager before running
sudo make install
Fix ownerships after root install
sudo chown -R kdb:users .
Each user must be part of the UUCP dialout group in order to use the serial ports, perhaps make a udev rule later.
To the file macros/StartupMacros.txt in your ImageJ directory, add the following:
macro "AutoRun" { run("Micro-Manager Studio"); }
udev rules
vi /etc/udev/rules.d/micromanager.rules
# ITC18 ATTRS{idVendor}=="1482", ATTRS{idProduct}=="0011", MODE="0666" # Andor USB and Bitflow cameras SYSFS{idVendor}=="136e", MODE="0666" SUBSYSTEM=="video4linux", KERNEL=="video[0-3]*", ATTR{name}=="bitflow", GROUP="users" # Spectra X-Cite ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0666" # "Velleman K8055-0" ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5500", MODE="0666" #Velleman K8055-1 ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5501", MODE="0666" #Velleman K8055-2 ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5502", MODE="0666" #Velleman K8055-3 ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="5503", MODE="0666" #Velleman K8061-0 ATTRS{idVendor}=="10cf", ATTRS{idProduct}=="8061", MODE="0666" #Ludl Mac 5000 ATTRS{idVendor}=="6969", ATTRS{idProduct}=="1235", MODE="0666" #ASI MS-2000 ATTRS{idVendor}=="0b54", ATTRS{idProduct}=="2000", MODE="0666" #Spectral LMM5 ATTRS{idVendor}=="1bdb", ATTRS{idProduct}=="0300", MODE="0666" #Nikon AZ100m ATTRS{idVendor}=="04b0", ATTRS{idProduct}=="7804", MODE="0666" #Zeiss AxioObserver Z1 ATTRS{idVendor}=="0758", ATTRS{idProduct}=="1004", MODE="0666"
Running
/usr/java/latest/bin/java -Xmx512m -Djava.library.path=/usr/lib64/micro-manager/ -cp ij.jar ij.ImageJ
my script:
#!/bin/bash export IMAGEJDIR=/usr/local/ImageJ export MMDIR=/usr/lib64/micro-manager #export LD_DEBUG=files cd $IMAGEJDIR /usr/java/latest/bin/java -Xmx10000m -Djava.library.path=$MMDIR -cp $IMAGEJDIR/ij.jar ij.ImageJ
RPM Build
cd /storage/big1/kdb/projects/micromanager/micromanager2/trunk; svn update tar --exclude-vcs -cvzf /storage/big1/kdb/public_html/micro-manager/micro-manager-`cat version.txt`.tar.gz ./
cd /storage/big1/kdb/projects/micromanager/ tar --exclude-vcs -cvzf /storage/big1/kdb/public_html/micro-manager/3rdpartypublic.tar.gz 3rdpartypublic/classext/
./configure JAVAC="/usr/java/latest/bin/javac" JAVA_HOME="/usr/java/latest" JNI_CPPFLAGS="-I/usr/java/latest/include -\I/usr/java/latest/include/linux" --prefix=/usr/ --with-ij-jar=/usr/share/java/imagej.jar