Installation: Difference between revisions

Jump to navigation Jump to search
3,370 bytes removed ,  3 December 2019
→‎XDS package: add z to Mac "tar xzvf " options since this seems to be req'd on old Macs
(→‎Windows: screenshot)
(→‎XDS package: add z to Mac "tar xzvf " options since this seems to be req'd on old Macs)
(20 intermediate revisions by the same user not shown)
Line 1: Line 1:
This article has some little script snippets that should ease the installation of XDS and related programs ([[XDS-viewer]], [[xdsstat]], [[XDSGUI|xdsgui]]). It is assumed that binaries (or links to binaries) should go to /usr/local/bin .
This article has some little script snippets that should ease the installation of XDS and related programs like ([[XDS-viewer]], [[xdsstat]], [[XDSGUI|xdsgui]]). It is assumed that binaries (or links to binaries) should go to /usr/local/bin . This means that you should do this as the administrator (root), or have sudo rights (Mac, and some Linux distros).




== Linux ==
== Linux ==
Log in as root - we need write permission for /usr/local/bin .
'''Log in as root''' - we need write permission for /usr/local/bin .


To get the [[XDS]] package if you are an academic user,
=== [[XDS]] package ===
If you are an academic user, as root
<pre>
<pre>
  cd /usr/local/bin
  cd /usr/local/bin
Line 11: Line 12:
  ln -sf XDS-INTEL64_Linux_x86_64/* .
  ln -sf XDS-INTEL64_Linux_x86_64/* .
</pre>
</pre>
To get the script [[generate_XDS.INP]] from its XDSwiki article,
 
<pre>
=== other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]] ===
  cd /usr/local/bin
... can be downloaded from ftp://turn5.biologie.uni-konstanz.de/pub/linux_bin/ . A simple way to obtain them is to create an empty folder, "cd" to that folder and then (as root)
wget http://strucbio.biologie.uni-konstanz.de/xdswiki/index.php/generate_XDS.INP -O - | \
wget ftp://turn5.biologie.uni-konstanz.de/pub/linux_bin/get_folder.sh
  sed -e s/\&nbsp\;/\ /g -e s/\&gt\;/\>/g -e s/\&lt\;/\</g -e s/amp\;//g -e s/\&quot\;/\"/g -e s/\&\#\1\6\0\;/\ /g | \
  chmod +x get_folder.sh
  sed '/# end of generate_XDS.INP/,$d' | awk '/^#/,/rm -f tmp1 tmp2/' > generate_XDS.INP
./get_folder.sh
  chmod +x generate_XDS.INP
 
</pre>
Please note that to get the <code>strings</code> command, which is used by [[generate_XDS.INP]], on some Linux distributions (e.g. FC23) you need to install the <code>binutils</code> RPM package.
Please note that to get the <code>strings</code> command, which is used by [[generate_XDS.INP]], on some Linux distributions (e.g. FC23) you need to install the <code>binutils</code> RPM package.
To get [[XDS-Viewer]],
<pre>
cd /usr/local/bin
wget ftp://turn5.biologie.uni-konstanz.de/pub/xds-viewer-0.6.64bit -O xds-viewer
chmod a+x xds-viewer 
ln -sf xds-viewer xdsviewer
</pre>
To get [[XDSSTAT]],
<pre>
cd /usr/local/bin
wget ftp://turn5.biologie.uni-konstanz.de/pub/xdsstat-linux64.bz2 -O xdsstat.bz2
bunzip2 -f xdsstat.bz2
chmod a+x xdsstat
</pre>
To get [[XDSCC12]],
<pre>
cd /usr/local/bin
wget ftp://turn5.biologie.uni-konstanz.de/pub/xdscc12.rhel6.64 -O xdscc12
chmod a+x xdscc12
</pre>
To get [[XDSGUI]],
<pre>
cd /usr/local/bin
wget ftp://turn5.biologie.uni-konstanz.de/pub/xdsgui.rhel6.64 -O xdsgui
chmod a+x xdsgui
</pre>


Since XDSGUI depends on graphics packages that may need to be installed, you can check the xdsgui binary with
Since XDSGUI depends on graphics packages that may need to be installed, you can check the xdsgui binary with
  ldd `which xdsgui`
  ldd `which xdsgui`
and that should show you the libraries it found, and more importantly, those that it didn't find. Your friendly system administrator will then work out the specific commands to install those libraries; on RedHat-type distributions that would typically be e.g. <code>yum provides libXfixes.so.3</code> the output of which will tell you that this is in the libXfixes RPM.
and that should show you the libraries it found, and more importantly, those that it didn't find. Your friendly system administrator will then work out the specific commands to install those libraries; on RedHat-type distributions that would typically be e.g. <code>yum provides libXfixes.so.3</code> the output of which will tell you that this is in the libXfixes RPM.
Ubuntu 14 users: please read http://strucbio.biologie.uni-konstanz.de/xdswiki/index.php/XDSGUI#Installation if you have a problem with missing libmng2.
Ubuntu 14 users: please read [[XDSGUI#Installation|XDSGUI]] if you have a problem with missing libmng2. Ubuntu 16.04 and 18.04: if libQtOpenGL.so.4 is missing, use <code>sudo apt install libqt4-opengl</code>.
 
Of course, this still requires installation of <code>xxdiff</code> (or alternative), and for .h5 data: HDF5 package, and <code>H5ToXds</code> and/or [https://www.dectris.com/company/news/newsroom/news-details/process-eiger-data-with-xds-fast Neggia] library.


It is useful to install xxdiff or one of its alternatives (see below). The package is likely available for your distribution - google for it, or try e.g.
<code>xxdiff</code> is likely available for your distribution - google for it, or try e.g.
  yum -y install xxdiff
  yum -y install xxdiff
on RHEL6/CentOS6/SL6 systems, or
on RHEL6/CentOS6/SL6 systems, or
Line 59: Line 34:
on Ubuntu.
on Ubuntu.


On Centos7 (RHEL7, SL7) I went to http://rpmfind.net/linux/rpm2html/search.php?query=xxdiff and found that the Fedora 20 RPM can be installed using
An <code>xxdiff</code> binary that runs on CentOS7 (RHEL7, SL7) is provided by the <code>get_folder.sh</code> script.
yum install ftp://rpmfind.net/linux/fedora/linux/releases/20/Everything/x86_64/os/Packages/x/xxdiff-3.2-20.fc20.x86_64.rpm
Perhaps xxdiff will be available on EPEL some day - maybe it is available on RPMforge; I didn't check.


Alternatively, tkdiff may be installed, or other graphical comparison programs, like meld or kdiff3. vimdiff is also nice, and probably already installed.
Alternatively, tkdiff may be installed, or other graphical comparison programs, like meld or kdiff3. vimdiff is also nice, and probably already installed.


For [[Eiger]] data processing, H5ToXDS should be installed as [[Eiger|explained]], and <code>h5dump</code> should be installed by e.g. <code>yum -y install hdf5</code>.
For [[Eiger]] data processing, <code>H5ToXDS</code> should be installed as [[Eiger|explained]], and <code>h5dump</code> should be installed by e.g. <code>yum -y install hdf5</code>.


== Mac (Intel) ==
== Mac OSX ==


Attention: [[generate_XDS.INP]] requires [https://developer.apple.com/xcode/ Xcode] to be installed. '''Xcode''' is not installed by default, but can be downloaded free of charge from the Mac App Store: after installing Xcode, open '''Preferences''', select the '''Downloads''' tab, and click the '''Install''' next to '''Command Line Tools'''. Or: open a Terminal window and type <code>xcode-select --install</code>. This will bring up a prompt to install the necessary command line tools.  
Attention: [[generate_XDS.INP]] requires the [https://developer.apple.com/download/more/ Xcode command line tools] to be installed (free of charge). In my experience, you have to explicitly agree to the License terms when running a Command Line Tool (e.g. <code>strings</code>) for the first time.


You also have to explicitly agree to the License terms when running a Command Line Tool for the first time.
Become familiar with the concept and ways to run commands as "root" - google "mac osx become root". All the tasks that are run in a Terminal window require root privileges, since some of the programs and their links are written to /usr/local/bin. (As an alternative that does not require root, one may create a directory $HOME/bin and use that for the programs and links. That would also require modification of the $PATH, by a one-time <code>echo 'export PATH=$PATH:$HOME/bin' >> ~/.profile</code>)


I'm not sure if Xcode can be installed without administrator privileges; you may also wish to look at http://guide.macports.org/#installing.xcode .
So, prepare the following steps by opening the Terminal window, and then
sudo su                    # this will make you root, and ask for your password
mkdir /usr/local/bin  # only if /usr/local/bin was not created before


=== personal installation (experimental writeup) ===
=== [[XDS]] package ===
If you are an academic user,


'''Preparation''':
  echo you may have to "sudo su" first, to obtain administrator permissions!
* make sure your $PATH includes your $HOME/bin - the programs will be put into that directory. To achieve this, open a Terminal window, and then
  cd /usr/local/bin
<pre>
  curl -L -o - ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch/XDS-OSX_64.tar.gz | tar xzvf -
cd $HOME
  echo 'export PATH=$PATH:$HOME/bin' >> ~/.profile
</pre>
(I'm not sure if it should be .profile or .bashrc; I have seen it work with .profile but not with .bashrc on a Leopard system)
* create the $HOME/bin and $HOME/Applications directories. Still in the Terminal window, type
<pre>
mkdir $HOME/bin
mkdir $HOME/Applications
</pre>
'''To install [[generate_XDS.INP]]''':
<pre>
  cd $HOME/bin
curl -L -o - http://strucbio.biologie.uni-konstanz.de/xdswiki/index.php/generate_XDS.INP | \
  sed -e s/\&nbsp\;/\ /g -e s/\&gt\;/\>/g -e s/\&lt\;/\</g -e s/amp\;//g -e s/\&quot\;/\"/g -e s/\&\#\1\6\0\;/\ /g | \
  sed '/# end of generate_XDS.INP/,$d' | awk '/^#/,/rm -f tmp1 tmp2/' > generate_XDS.INP
chmod +x generate_XDS.INP
</pre>
'''To install [[XDS]]''':
<pre>
cd $HOME/bin
  curl -L -o - ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch/XDS-OSX_64.tar.gz | tar xvf -
  ln -sf XDS-OSX_64/* .
  ln -sf XDS-OSX_64/* .
</pre>


'''To install [[XDS-Viewer]]''', click https://sourceforge.net/project/platformdownload.php?group_id=239755 , open up the downloaded XDS-Viewer.app by clicking, and then (once you see it in the Finder), go to the Terminal and
=== other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]]  ===
cp -pr /Volumes/XDS-Viewer/XDS-Viewer.app/ $HOME/Applications
... can be downloaded from ftp://turn5.biologie.uni-konstanz.de/pub/mac_bin/ . A simple way to obtain them is is to open a Terminal, and type:
ln -s $HOME/Applications/XDS-Viewer.app/Contents/MacOS/xds-viewer-bin $HOME/bin/xds-viewer
sudo su
which asks for the password and gives you administrator permissions. Then,
'''To install [[XDSSTAT]]''',
  # any folder would do; here we use /usr/local/bin/mac_bin
<pre>
  mkdir -p /usr/local/bin/mac_bin
cd $HOME/bin
cd /usr/local/bin/mac_bin
curl -L -o xdsstat.bz2 ftp://turn5.biologie.uni-konstanz.de/pub/xdsstat-i386-mac.bz2
  curl -O -R ftp://turn5.biologie.uni-konstanz.de/pub/mac_bin/get_folder.sh
bunzip2 -f xdsstat.bz2
  chmod +x get_folder.sh
chmod a+x xdsstat
  ./get_folder.sh
</pre>
If you want to update the programs some time later, just run these commands again.
'''To install [[XDSCC12]]''',
<pre>
cd $HOME/bin
curl -L -o xdscc12 ftp://turn5.biologie.uni-konstanz.de/pub/xdscc12-mac
chmod a+x xdscc12
 
</pre>
'''To install [[XDSGUI]]''', please download from ftp://turn5.biologie.uni-konstanz.de/pub/xdsgui.dmg, open up the downloaded xdsgui.app by clicking, and then (once you see it in the Finder), go to the Terminal and
  cp -pr /Volumes/xdsgui/xdsgui.app/ $HOME/Applications
  ln -s $HOME/Applications/xdsgui.app/Contents/MacOS/xdsgui $HOME/bin/xdsgui
   
Please also check [[XDSGUI#Installation]].
 
It is useful to install xxdiff from http://furius.ca/downloads/xxdiff/releases/macosx/xxdiff-4.0b1.osx.dmg (or newer). After downloading, open up the downloaded xxdiff.app by clicking, and then (once you see it in the Finder), go to the Terminal and
  cp -pr /Volumes/xxdiff/xxdiff.app/ $HOME/Applications
  ln -s $HOME/Applications/xxdiff.app/Contents/MacOS/xxdiff $HOME/bin/xxdiff
 
(the names of the files may not be entirely correct in these two lines)
 
=== system-wide installation (requires root permission) ===


To get [[generate_XDS.INP]]:
In order to enable [[Eiger]] data processing, the <code>get_folder.sh</code> script
<pre>
# copies Dectris' Neggia library into /usr/local/lib64
cd /usr/local/bin
# copies [[Eiger#General_aspects|eiger2cbf-osx]] into /usr/local/bin, but under the name <code>H5ToXds</code>
sudo sh -c 'curl -L -o - http://strucbio.biologie.uni-konstanz.de/xdswiki/index.php/generate_XDS.INP | \
# copies [https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.7/bin/mac-intel-x86_64/utilities/h5dump version 1.8.7] of <code>h5dump</code> into /usr/local/bin
  sed -e s/\&nbsp\;/\ /g -e s/\&gt\;/\>/g -e s/\&lt\;/\</g -e s/amp\;//g -e s/\&quot\;/\"/g -e s/\&\#\1\6\0\;/\ /g | \
  sed '/# end of generate_XDS.INP/,$d' | awk '/^#/,/rm -f tmp1 tmp2/' > generate_XDS.INP'
sudo chmod +x generate_XDS.INP
</pre>


To get [[XDS]]:
Lastly, it is useful (for e.g. XDSGUI) to install <code>xxdiff</code> from http://furius.ca/downloads/xxdiff/releases/macosx/
<pre>
cd /usr/local/bin
sudo sh -c 'curl -L -o - ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch/XDS-OSX_64.tar.gz | tar xvf -'
sudo ln -sf XDS-OSX_64/* .
</pre>
 
To get [[XDS-Viewer]], click https://sourceforge.net/project/platformdownload.php?group_id=239755 , install in the usual graphical way to your /Applications and then
sudo ln -s /Applications/XDS-Viewer.app/Contents/MacOS/xds-viewer-bin /usr/local/bin/xds-viewer
To get [[XDSSTAT]],
<pre>
cd /usr/local/bin
sudo curl -L -o xdsstat.bz2 ftp://turn5.biologie.uni-konstanz.de/pub/xdsstat-i386-mac.bz2
sudo bunzip2 -f xdsstat.bz2
sudo chmod a+x xdsstat
</pre>
 
To get [[XDSCC12]],
<pre>
cd /usr/local/bin
sudo curl -L -o xdscc12 ftp://turn5.biologie.uni-konstanz.de/pub/xdscc12-mac
sudo chmod a+x xdscc12
</pre>
 
To get [[XDSGUI]], please download from ftp://turn5.biologie.uni-konstanz.de/pub/xdsgui.dmg and then
sudo ln -s /Applications/xdsgui.app/Contents/MacOS/xdsgui /usr/local/bin/xdsgui
Please also check [[XDSGUI#Installation]].
 
It is useful to install xxdiff from http://furius.ca/downloads/xxdiff/releases/macosx/
 
For [[Eiger]] data processing, [[Eiger#General_aspects|eiger2cbf-osx]] should be sym-linked into a directory in your $PATH, but under the name H5ToXds, and <code>h5dump</code> should be installed from a .dmg file.


=== Troubleshooting ===
=== Troubleshooting ===
Line 208: Line 102:
[https://blogs.msdn.microsoft.com/commandline/2017/04/11/windows-10-creators-update-whats-new-in-bashwsl-windows-console/ Windows 10 Creators Update] (CU) allows to install (or update to) Ubuntu 16.04 (or other distros, see [https://blogs.msdn.microsoft.com/commandline/2017/05/11/new-distros-coming-to-bashwsl-via-windows-store/]), and fixes many bugs.
[https://blogs.msdn.microsoft.com/commandline/2017/04/11/windows-10-creators-update-whats-new-in-bashwsl-windows-console/ Windows 10 Creators Update] (CU) allows to install (or update to) Ubuntu 16.04 (or other distros, see [https://blogs.msdn.microsoft.com/commandline/2017/05/11/new-distros-coming-to-bashwsl-via-windows-store/]), and fixes many bugs.


Graphical Linux programs require installation of a X server like [https://sourceforge.net/projects/xming/files/latest/download Xming] or [https://sourceforge.net/projects/vcxsrv VcXsvr] on the Windows host. There are helpful writeups (e.g. [http://asria.pl/configure-graphic-and-sound-for-wsl-creators-update-for-ubuntu-16-04],[http://wsl-guide.org/en/latest/]). To use the X server, one has to say in the shell window
Graphical Linux programs require installation of a X server like [https://sourceforge.net/projects/xming/files/latest/download Xming] or [https://sourceforge.net/projects/vcxsrv VcXsvr] on the Windows host. There are helpful writeups (e.g. [http://wsl-guide.org/en/latest/]). To use the X server, one has to say in the shell window
  export DISPLAY=:0
  export DISPLAY=:0
before running the program. Running XDSGUI under WSL's Ubuntu 14.04 requires installation of a few packages with
before running the program. Running XDSGUI under WSL's Ubuntu 14.04 requires installation of a few packages with
Line 220: Line 114:
XDSSTAT and the conversion to MTZ files by XDSCONV require a CCP4 installation accessible by WSL. In principle, CCP4 may be installed within WSL (have not tested this), or on the Windows host.
XDSSTAT and the conversion to MTZ files by XDSCONV require a CCP4 installation accessible by WSL. In principle, CCP4 may be installed within WSL (have not tested this), or on the Windows host.


[[File:Xds_win.PNG|thumb|left]]
[[File:Xds_win.PNG|1000px]]
 
(Screenshot provided by Gustavo Lima)
(Screenshot provided by Gustavo Lima)
== See also ==
[[Cluster Installation]]
2,652

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Navigation menu