Install Xmipp » History » Version 58
Sargis Dallakyan, 05/02/2012 09:57 AM
1 | 1 | Amber Herold | h1. Install Xmipp |
---|---|---|---|
2 | |||
3 | 30 | Neil Voss | h2. Install documentation at Xmipp |
4 | |||
5 | 34 | Amber Herold | Biocomputing Unit at the Spanish National Center of Biotechnology (CNB-CSIC) provides "detailed documentation":http://xmipp.cnb.csic.es/twiki/bin/view/Xmipp/InstallingTheSoftware on how to install Xmipp on various systems. Below we cover _our way_ to get it working on your system. |
6 | 30 | Neil Voss | |
7 | 46 | Amber Herold | h2. Install supporting packages |
8 | |||
9 | 57 | Neil Voss | |_.Name:|_.Download site:|_.CentOS package name|_.Fedora package name|_.SuSE rpm name| |
10 | 46 | Amber Herold | |gcc-c++||gcc-c++|| |
11 | |openmpi-devel||openmpi-devel|| |
||
12 | |libtiff-devel||libtiff-devel|| |
||
13 | 57 | Neil Voss | |libjpeg-devel||libjpeg-devel|libjpeg-turbo-devel|| |
14 | 49 | Amber Herold | |zlib-devel||zlib-devel|| |
15 | 46 | Amber Herold | |
16 | 22 | Neil Voss | h2. Install Xmipp from source |
17 | |||
18 | 29 | Neil Voss | We recommend installing Xmipp from source to properly use the openmpi libraries that allows you to run on multiple processors |
19 | |||
20 | 27 | Neil Voss | h3. Download source code |
21 | |||
22 | 10 | Neil Voss | * Download the v2.4 source code from http://xmipp.cnb.csic.es/twiki/bin/view/Xmipp/InstallingTheSoftware |
23 | 12 | Neil Voss | * Unzip the source code: |
24 | 1 | Amber Herold | <pre>tar zxvf Xmipp-2.4-src.tar.gz</pre> |
25 | 53 | Neil Voss | |
26 | Alternatively, you may download from the svn repo: |
||
27 | |||
28 | 55 | Neil Voss | <pre>svn co http://newxmipp.svn.sourceforge.net/svnroot/newxmipp/tags/release-2.4/xmipp/ Xmipp-2.4-src</pre> |
29 | 27 | Neil Voss | |
30 | 54 | Neil Voss | As of Feb 2012, this was required to compile the 2.4 source code. |
31 | |||
32 | 58 | Sargis Dallakyan | h3. Prepare Xmipp make files |
33 | 27 | Neil Voss | |
34 | 1 | Amber Herold | * Go into Xmipp source directory |
35 | 58 | Sargis Dallakyan | * Find openmpi directory |
36 | 52 | Sargis Dallakyan | <pre> |
37 | 58 | Sargis Dallakyan | locate libmpi.so |
38 | /usr/lib64/openmpi/1.3.2-gcc/lib/libmpi.so |
||
39 | 1 | Amber Herold | </pre> |
40 | |||
41 | 58 | Sargis Dallakyan | *Note:* If you can not find the openmpi directory, make sure you have installed the openmpi package. The installation on CentOS using yum is: yum -y install openmpi-devel. |
42 | 1 | Amber Herold | |
43 | 58 | Sargis Dallakyan | * Setup Xmipp to use openmpi by changing three lines in SConstruct (creating a backup of the file first) |
44 | <pre> |
||
45 | cp -v SConstruct SConstruct.orig |
||
46 | </pre><pre> |
||
47 | opts.Add('MPI_INCLUDE', 'MPI headers dir ', '/usr/lib/openmpi/1.2.7-gcc/include/') |
||
48 | opts.Add('MPI_LIBDIR', 'MPI libraries dir ', '/usr/lib/openmpi/1.2.7-gcc/lib/') |
||
49 | opts.Add('MPI_LIB', 'MPI library', 'mpi') |
||
50 | </pre> |
||
51 | |||
52 | h3. Compile the source code |
||
53 | |||
54 | 52 | Sargis Dallakyan | * Configure |
55 | 1 | Amber Herold | |
56 | 58 | Sargis Dallakyan | Be sure to modify the path in the second command as needed. For example, on a 32 bit machine using 1.4-gcc the command is: |
57 | export PATH=$PATH:/usr/lib/openmpi/1.4-gcc/bin |
||
58 | 1 | Amber Herold | |
59 | <pre> |
||
60 | 58 | Sargis Dallakyan | sudo mpi-selector --verbose --yes --system --set `rpm --qf '%{NAME}-%{VERSION}-gcc-%{ARCH}\n' -q openmpi` |
61 | export PATH=$PATH:/usr/lib64/openmpi/1.3.2-gcc/bin |
||
62 | ./scons.configure |
||
63 | </pre> |
||
64 | |||
65 | |||
66 | *Note:* If you are installing Xmipp on x86_64 CentOS 6, you can use the following commands instead. |
||
67 | |||
68 | |||
69 | <pre> |
||
70 | export PATH=/usr/lib64/openmpi/bin:$PATH |
||
71 | 56 | Neil Voss | ./scons.configure \ |
72 | MPI_LIBDIR=/lib/usr/lib64/openmpi/lib \ |
||
73 | MPI_INCLUDE=/lib/usr/lib64/openmpi/include \ |
||
74 | MPI_LIB=mpi |
||
75 | 5 | Amber Herold | </pre> |
76 | 45 | Amber Herold | |
77 | 1 | Amber Herold | * Look for the following line in the output: |
78 | 42 | Amber Herold | |
79 | 1 | Amber Herold | <pre> |
80 | * Checking for MPI ... yes |
||
81 | 11 | Neil Voss | </pre> |
82 | 42 | Amber Herold | |
83 | 1 | Amber Herold | * Now compile the source code |
84 | 42 | Amber Herold | |
85 | 1 | Amber Herold | <pre> |
86 | ./scons.compile |
||
87 | </pre> |
||
88 | 42 | Amber Herold | |
89 | 17 | Neil Voss | * Move the main source code directory to global location, like @/usr/local@ |
90 | 42 | Amber Herold | |
91 | 19 | Neil Voss | <pre>sudo mv -v Xmipp-2.4-src /usr/local/Xmipp</pre> |
92 | 17 | Neil Voss | |
93 | 27 | Neil Voss | h3. Setup environmental variables |
94 | |||
95 | * For bash, edit xmipp.sh: |
||
96 | 21 | Neil Voss | <pre> |
97 | 18 | Neil Voss | export XMIPPDIR=/usr/local/Xmipp |
98 | export PATH=${XMIPPDIR}/bin:${PATH} |
||
99 | 1 | Amber Herold | export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${XMIPPDIR}/lib |
100 | 18 | Neil Voss | </pre> |
101 | 27 | Neil Voss | * For C shell, edit xmipp.csh: |
102 | 18 | Neil Voss | <pre> |
103 | 1 | Amber Herold | setenv XMIPPDIR /usr/local/Xmipp |
104 | setenv PATH ${XMIPPDIR}/bin:${PATH} |
||
105 | setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${XMIPPDIR}/lib |
||
106 | </pre> |
||
107 | 27 | Neil Voss | * Copy to /etc/profile.d |
108 | 17 | Neil Voss | <pre> |
109 | 18 | Neil Voss | sudo cp -v xmipp.sh /etc/profile.d/ |
110 | 20 | Neil Voss | sudo chmod 755 /etc/profile.d/xmipp.sh |
111 | 18 | Neil Voss | |
112 | 26 | Neil Voss | - or - |
113 | |||
114 | 18 | Neil Voss | sudo cp -v xmipp.csh /etc/profile.d/ |
115 | 20 | Neil Voss | sudo chmod 755 /etc/profile.d/xmipp.csh |
116 | 17 | Neil Voss | </pre> |
117 | 18 | Neil Voss | |
118 | 51 | Amber Herold | bq. You may need to log out and log back in for these changes to take place, or source the environment script: <pre> source /etc/profile.d/xmipp.sh</pre> |
119 | 1 | Amber Herold | |
120 | 22 | Neil Voss | h2. Test Xmipp |
121 | 23 | Neil Voss | |
122 | Test Xmipp by running ml_align2d program |
||
123 | 1 | Amber Herold | <pre> |
124 | 24 | Neil Voss | xmipp_ml_align2d -h |
125 | 22 | Neil Voss | </pre> |
126 | 24 | Neil Voss | This result should appear |
127 | 22 | Neil Voss | <pre> |
128 | 2104:Argument -i not found or invalid argument |
||
129 | File: libraries/data/args.cpp line: 502 |
||
130 | Usage: ml_align2d [options] |
||
131 | -i <selfile> : Selfile with input images |
||
132 | -nref <int> : Number of references to generate automatically (recommended) |
||
133 | OR -ref <selfile/image> OR selfile with initial references/single reference image |
||
134 | [ -o <rootname> ] : Output rootname (default = "ml2d") |
||
135 | [ -mirror ] : Also check mirror image of each reference |
||
136 | [ -fast ] : Use pre-centered images to pre-calculate significant orientations |
||
137 | [ -thr <N=1> ] : Use N parallel threads |
||
138 | [ -more_options ] : Show all possible input parameters |
||
139 | </pre> |
||
140 | 47 | Amber Herold | |
141 | 8 | Amber Herold | ______ |
142 | 16 | Neil Voss | |
143 | 32 | Neil Voss | [[Install SPIDER|< Install SPIDER]] | [[Install UCSF Chimera|Install UCSF Chimera >]] |
144 | 9 | Amber Herold | |
145 | 1 | Amber Herold | ______ |