Install Xmipp » History » Version 42
Amber Herold, 05/21/2010 03:49 PM
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 | 22 | Neil Voss | h2. Install Xmipp from source |
8 | |||
9 | 29 | Neil Voss | We recommend installing Xmipp from source to properly use the openmpi libraries that allows you to run on multiple processors |
10 | |||
11 | 27 | Neil Voss | h3. Download source code |
12 | |||
13 | 10 | Neil Voss | * Download the v2.4 source code from http://xmipp.cnb.csic.es/twiki/bin/view/Xmipp/InstallingTheSoftware |
14 | 12 | Neil Voss | * Unzip the source code: |
15 | <pre>tar zxvf Xmipp-2.4-src.tar.gz</pre> |
||
16 | 27 | Neil Voss | |
17 | h3. Prepare Xmipp make files |
||
18 | |||
19 | 1 | Amber Herold | * Go into Xmipp source directory |
20 | * Find openmpi directory |
||
21 | <pre> |
||
22 | 11 | Neil Voss | locate libmpi.so |
23 | 15 | Neil Voss | /usr/lib64/openmpi/1.3.2-gcc/lib/libmpi.so |
24 | 1 | Amber Herold | </pre> |
25 | |||
26 | 36 | Amber Herold | *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. |
27 | 35 | Amber Herold | |
28 | 37 | Amber Herold | * Setup Xmipp to use openmpi by changing three lines in SConstruct (creating a backup of the file first) |
29 | 1 | Amber Herold | <pre> |
30 | 11 | Neil Voss | cp -v SConstruct SConstruct.orig |
31 | 28 | Neil Voss | </pre><pre> |
32 | 1 | Amber Herold | opts.Add('MPI_INCLUDE', 'MPI headers dir ', '/usr/lib/openmpi/1.2.7-gcc/include/') |
33 | opts.Add('MPI_LIBDIR', 'MPI libraries dir ', '/usr/lib/openmpi/1.2.7-gcc/lib/') |
||
34 | opts.Add('MPI_LIB', 'MPI library', 'mpi') |
||
35 | </pre> |
||
36 | |||
37 | 27 | Neil Voss | h3. Compile the source code |
38 | |||
39 | * Configure |
||
40 | 40 | Amber Herold | |
41 | 41 | Amber Herold | 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: |
42 | export PATH=$PATH:/usr/lib/openmpi/1.4-gcc/bin |
||
43 | 40 | Amber Herold | |
44 | 11 | Neil Voss | <pre> |
45 | 39 | Amber Herold | sudo mpi-selector --verbose --yes --system --set `rpm --qf '%{NAME}-%{VERSION}-gcc-%{ARCH}\n' -q openmpi` |
46 | 1 | Amber Herold | export PATH=$PATH:/usr/lib64/openmpi/1.3.2-gcc/bin |
47 | ./scons.configure |
||
48 | 5 | Amber Herold | </pre> |
49 | 42 | Amber Herold | |
50 | 1 | Amber Herold | * Look for the following line in the output: |
51 | 42 | Amber Herold | |
52 | 1 | Amber Herold | <pre> |
53 | * Checking for MPI ... yes |
||
54 | 11 | Neil Voss | </pre> |
55 | 42 | Amber Herold | |
56 | 1 | Amber Herold | * Now compile the source code |
57 | 42 | Amber Herold | |
58 | 1 | Amber Herold | <pre> |
59 | ./scons.compile |
||
60 | </pre> |
||
61 | 42 | Amber Herold | |
62 | 17 | Neil Voss | * Move the main source code directory to global location, like @/usr/local@ |
63 | 42 | Amber Herold | |
64 | 19 | Neil Voss | <pre>sudo mv -v Xmipp-2.4-src /usr/local/Xmipp</pre> |
65 | 17 | Neil Voss | |
66 | 27 | Neil Voss | h3. Setup environmental variables |
67 | |||
68 | * For bash, edit xmipp.sh: |
||
69 | 21 | Neil Voss | <pre> |
70 | 18 | Neil Voss | export XMIPPDIR=/usr/local/Xmipp |
71 | export PATH=${XMIPPDIR}/bin:${PATH} |
||
72 | 1 | Amber Herold | export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${XMIPPDIR}/lib |
73 | 18 | Neil Voss | </pre> |
74 | 27 | Neil Voss | * For C shell, edit xmipp.csh: |
75 | 18 | Neil Voss | <pre> |
76 | 1 | Amber Herold | setenv XMIPPDIR /usr/local/Xmipp |
77 | setenv PATH ${XMIPPDIR}/bin:${PATH} |
||
78 | setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${XMIPPDIR}/lib |
||
79 | </pre> |
||
80 | 27 | Neil Voss | * Copy to /etc/profile.d |
81 | 17 | Neil Voss | <pre> |
82 | 18 | Neil Voss | sudo cp -v xmipp.sh /etc/profile.d/ |
83 | 20 | Neil Voss | sudo chmod 755 /etc/profile.d/xmipp.sh |
84 | 18 | Neil Voss | |
85 | 26 | Neil Voss | - or - |
86 | |||
87 | 18 | Neil Voss | sudo cp -v xmipp.csh /etc/profile.d/ |
88 | 20 | Neil Voss | sudo chmod 755 /etc/profile.d/xmipp.csh |
89 | 17 | Neil Voss | </pre> |
90 | 18 | Neil Voss | |
91 | 26 | Neil Voss | bq. You may need to log out and log back in for these changes to take place. |
92 | 1 | Amber Herold | |
93 | 22 | Neil Voss | h2. Test Xmipp |
94 | 23 | Neil Voss | |
95 | Test Xmipp by running ml_align2d program |
||
96 | 1 | Amber Herold | <pre> |
97 | 24 | Neil Voss | xmipp_ml_align2d -h |
98 | 22 | Neil Voss | </pre> |
99 | 24 | Neil Voss | This result should appear |
100 | 22 | Neil Voss | <pre> |
101 | 2104:Argument -i not found or invalid argument |
||
102 | File: libraries/data/args.cpp line: 502 |
||
103 | Usage: ml_align2d [options] |
||
104 | -i <selfile> : Selfile with input images |
||
105 | -nref <int> : Number of references to generate automatically (recommended) |
||
106 | OR -ref <selfile/image> OR selfile with initial references/single reference image |
||
107 | [ -o <rootname> ] : Output rootname (default = "ml2d") |
||
108 | [ -mirror ] : Also check mirror image of each reference |
||
109 | [ -fast ] : Use pre-centered images to pre-calculate significant orientations |
||
110 | [ -thr <N=1> ] : Use N parallel threads |
||
111 | [ -more_options ] : Show all possible input parameters |
||
112 | </pre> |
||
113 | 8 | Amber Herold | ______ |
114 | 16 | Neil Voss | |
115 | 32 | Neil Voss | [[Install SPIDER|< Install SPIDER]] | [[Install UCSF Chimera|Install UCSF Chimera >]] |
116 | 9 | Amber Herold | |
117 | 1 | Amber Herold | ______ |