2,652
edits
(45 intermediate revisions by 2 users not shown) | |||
Line 3: | Line 3: | ||
== 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 . | ||
=== [[XDS]] package === | === [[XDS]] package === | ||
If you are an academic user, | If you are an academic user, as root | ||
<pre> | <pre> | ||
cd /usr/local/bin | cd /usr/local/bin | ||
Line 12: | Line 12: | ||
ln -sf XDS-INTEL64_Linux_x86_64/* . | ln -sf XDS-INTEL64_Linux_x86_64/* . | ||
</pre> | </pre> | ||
In case the [ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch above site] is unavailable, there is a [https://strucbio.biologie.uni-konstanz.de/pub/xds backup site]. | |||
=== other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]] === | === other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]], [[spot2pdb]], [[generate_XDS.INP]] === | ||
... can be downloaded from | ... can be downloaded from https://{{SERVERNAME}}/pub/linux_bin/ . A simple way to obtain them is to create an empty folder, "cd" to that folder and then | ||
wget | wget https://{{SERVERNAME}}/pub/linux_bin/get_folder.sh | ||
chmod +x get_folder.sh | chmod +x get_folder.sh | ||
./get_folder.sh | ./get_folder.sh | ||
You may repeat this every now and then to update the programs. | |||
As root, the script copies the programs into /usr/local/bin/linux_bin, and links them to /usr/local/bin. As a normal user, they are downloaded to $HOME/bin/linux_bin, and linked to your $HOME/bin. In the latter case, make sure that $HOME/bin is in your $PATH. | |||
The Qt5 graphics library is now the default for xdsgui and xds-viewer. Qt4 versions are available as xdsgui.qt4 and xds-viewer.qt4, for old Linux distributions (and for use with x2goclient, which would otherwise need [https://wiki.x2go.org/doku.php/wiki:development:glx-xlib-workaround special action] for Qt5 binaries). | |||
=== tools and helper programs for [[generate_XDS.INP]] and [[XDSGUI]], and libraries === | |||
* check and installation of Unix tools for [[generate_XDS.INP]] is shown at [[Generate_XDS.INP#Dependencies]] | |||
* helper programs for [[XDSGUI]] are listed and discussed at [[XDSGUI#Dependencies]]. Nota bene: XDSGUI needs [[generate_XDS.INP]] unless you already have a working XDS.INP. | |||
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` | grep found | ||
and that should show you the libraries it | and that should show you the libraries it it didn't find. Your friendly system administrator will then work out the specific commands to install those libraries. | ||
Ubuntu | |||
For RedHat-type distributions, that would typically be e.g. | |||
yum provides libXfixes.so.3 | |||
the output of which will tell you that this is in the libXfixes RPM. | |||
If in the case of Ubuntu you don't know the name of the package that provides a certain library, the | |||
sudo apt-file search <name-of-library> | |||
command should find it for you (where <code><name-of-library></code> could e.g. be <code>libGLU.so.1</code>). This needs a one-time installation by | |||
sudo apt install apt-file | |||
sudo apt-file update | |||
Ubuntu 18.04: if libQtOpenGL.so.4 is missing, use <code>sudo apt install libqt4-opengl</code>. | |||
Ubuntu 20.04: if libQtOpenGL.so.4 is missing (for the Qt4 binary of [[XDSGUI]]), use | |||
sudo add-apt-repository -y ppa:rock-core/qt4 | |||
sudo apt update | |||
sudo apt install libqt4-opengl | |||
If the Qt5 libraries are missing, use <code>sudo apt install libqt5gui5 libqt5printsupport5 libqt5opengl5</code>. | |||
On CentOS7, this would be <code>yum -y install qt5-qtbase-gui qt5-qtbase</code> . | |||
<code>xxdiff</code> 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 | ||
apt | apt install xxdiff | ||
on Ubuntu. | on Ubuntu. If Ubuntu 20.04 doesn't find it, use the latest from http://archive.ubuntu.com/ubuntu/pool/universe/x/xxdiff/ | ||
An <code>xxdiff</code> binary that runs on CentOS7 (RHEL7, SL7) is provided by the <code>get_folder.sh</code> script. | An <code>xxdiff</code> binary that runs on CentOS7 (RHEL7, SL7) is provided by the <code>get_folder.sh</code> script. | ||
Line 38: | Line 63: | ||
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, <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>. | 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> (Ubuntu: <code>apt install hdf5-tools</code>). Furthermore, you want the [https://www.dectris.com/company/news/newsroom/news-details/process-eiger-data-with-xds-fast Neggia] library or the [https://github.com/DiamondLightSource/durin Durin plugin]. | ||
== Mac OSX == | == Mac OSX == | ||
Attention: [[generate_XDS.INP]] requires the [https://developer.apple.com/download/more/ Xcode command line tools] to be installed (free of charge). | Attention: [[generate_XDS.INP]] requires the [https://developer.apple.com/download/more/ Xcode command line tools] to be installed (free of charge): open a Terminal window, and enter <code>sudo xcode-select --install</code>. You may have to explicitly agree to the License terms when running a Command Line Tool (e.g. <code>strings</code>) 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>) | Become familiar with the concept and ways to run commands as "root" - google "mac osx become root". All the installation 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 for installation, 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>) | ||
So, prepare the following steps by opening the Terminal window, and then | So, prepare the following steps by opening the Terminal window, and then | ||
Line 56: | Line 80: | ||
echo you may have to "sudo su" first, to obtain administrator permissions! | echo you may have to "sudo su" first, to obtain administrator permissions! | ||
cd /usr/local/bin | cd /usr/local/bin | ||
curl -L -o - ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch/XDS-OSX_64.tar.gz | tar | curl -L -o - ftp://ftp.mpimf-heidelberg.mpg.de/pub/kabsch/XDS-OSX_64.tar.gz | tar xzvf - | ||
ln -sf XDS-OSX_64/* . | ln -sf XDS-OSX_64/* . | ||
Starting with macOS Catalina, you also need | |||
xattr -dr XDS-OSX_64/* | |||
if you get a security error popup (google "xattr com.apple.quarantine catalina"). | |||
=== other programs: [[XDS- | === other programs: [[XDS-viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]], [[generate_XDS.INP]] === | ||
... can be downloaded from | ... can be downloaded from https://{{SERVERNAME}}/pub/mac_bin/ . A simple way to obtain them is is to open a Terminal, and type: | ||
sudo su | sudo su | ||
which asks for the password and gives you administrator permissions. Then, | which asks for the password and gives you administrator permissions. Then, | ||
curl -O -R | # any folder would do; here we use /usr/local/bin/mac_bin | ||
mkdir -p /usr/local/bin/mac_bin | |||
cd /usr/local/bin/mac_bin | |||
curl -O -R https://{{SERVERNAME}}/pub/mac_bin/get_folder.sh | |||
chmod +x get_folder.sh | chmod +x get_folder.sh | ||
./get_folder.sh | ./get_folder.sh | ||
If you want to update the programs some time later, just run these commands again. | |||
In order to enable [[Eiger]] data processing, the <code>get_folder.sh</code> script | In order to enable [[Eiger]] data processing, the <code>get_folder.sh</code> script | ||
# copies Dectris' Neggia library into /usr/local/lib64 | # copies Dectris' Neggia library into /usr/local/lib64 | ||
# copies [[Eiger#General_aspects|eiger2cbf-osx]] into /usr/local/bin, but under the name <code>H5ToXds</code>. | # copies [[Eiger#General_aspects|eiger2cbf-osx]] into /usr/local/bin, but under the name <code>H5ToXds</code> ([https://www.globalphasing.com GlobalPhasing's] hdf2mini-cbf would be preferable but needs [https://www.globalphasing.com/autoproc/ autoPROC] license) | ||
[ | # 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 (a 1.10 version is required for Eiger data from DLS) | ||
A [https://{{SERVERNAME}}/pub/mac_bin/XDS-Viewer-macOS10.13.dmg 10.13] Qt5 version of XDS-viewer (compiled by T. Hauß) works on macOS Catalina, and is installed by <code>get_folder.sh</code>. Older Macs need [https://{{SERVERNAME}}/pub/mac_bin/XDS-Viewer-0.6 this version]; newer macOS should install [https://{{SERVERNAME}}/pub/mac_bin/XDS-Viewer-macOS10.15.dmg 10.15]. For XDSGUI, the [https://{{SERVERNAME}}/pub/mac_bin/xdsgui_qt4.dmg Qt4 version] is still the default, but a [https://{{SERVERNAME}}/pub/mac_bin/xdsgui_qt5.dmg Qt5 version] is available. | |||
Lastly, it is useful (for e.g. XDSGUI) to install <code>xxdiff</code> from http://furius.ca/downloads/xxdiff/releases/macosx/ | Lastly, it is useful (for e.g. XDSGUI) to install <code>xxdiff</code> from http://furius.ca/downloads/xxdiff/releases/macosx/ . | ||
=== Troubleshooting === | === Troubleshooting === | ||
Line 87: | Line 117: | ||
# in the same way, check the other programs that should be used | # in the same way, check the other programs that should be used | ||
</pre> | </pre> | ||
returns a message like <code>file or directory not found</code> then this means that you do not have the symlink. But even if these commands do not return errors, you should also check the targets of the symlink | returns a message like <code>file or directory not found</code> then this means that you do not have the symlink. But even if these commands do not return errors, you should also check the targets of the symlink, as shown in the output of the <code>ls -l</code> commands. | ||
< | Again, these commands should not return an error message. If they do, the programs are not installed in the location where the symlink points to. You'll have to install the programs properly (in /Applications) and make the symlink point to the correct location. | ||
ls -l | |||
</ | |||
Again, these commands should not return an error message. If they do, the programs are not installed in the location where the symlink points to. You'll have to | |||
A quick way is also | A quick way is also | ||
Line 100: | Line 126: | ||
== Windows == | == Windows == | ||
The programs of the [[XDS]] package as well as [[XDSGUI]], [[XDSSTAT]], [[XDSCC12]] and so on may be run on 64bit Windows 10 within the [ | The programs of the [[XDS]] package as well as [[XDSGUI]], [[XDSSTAT]], [[XDSCC12]] and so on may be run on 64bit Windows 10 within the [https://docs.microsoft.com/windows/wsl/install-win10 Linux Subsystem for Windows] (WSL, or preferably WSL2). This (easily!) installs e.g. an [https://ubuntu.com/wsl Ubuntu] environment, which supports the apt package manager, so in principle any software available for Ubuntu may be installed (or other distros, see [https://blogs.msdn.microsoft.com/commandline/2017/05/11/new-distros-coming-to-bashwsl-via-windows-store/]). | ||
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. [ | 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] or [https://mobaxterm.mobatek.net/ Mobaxterm] on the Windows host. There are helpful writeups (e.g. [https://wiki.ubuntu.com/WSL#Running_Graphical_Applications] and [http://wsl-guide.org/en/latest/]). VcXsrc seems to have a problem with coot for some people (see [https://www.jiscmail.ac.uk/cgi-bin/wa-jisc.exe?A2=COOT;6ef4a967.2011 WSL2 installation] and responses). 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 | before running the program. Running XDSGUI under WSL's Ubuntu may require installation of a few packages with e.g. | ||
sudo apt-get install libgomp1 libqtgui4 | sudo apt-get install libgomp1 libqtgui4 | ||
and [[generate_XDS.INP]] requires a number of packages (some of which are only for specific detectors!); I'd start with | (see [[XDSGUI#Libraries_and_software_that_the_program_depends_on|XDSGUI]] and above). | ||
[[generate_XDS.INP]] requires a number of packages (some of which are only for specific detectors!); I'd start with | |||
sudo apt-get install coreutils binutils gawk sed bc grep | sudo apt-get install coreutils binutils gawk sed bc grep | ||
and if required, also install python and hdf5-tools. | and if required, also install python and hdf5-tools. | ||
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. | ||
Line 118: | Line 143: | ||
(Screenshot provided by Gustavo Lima) | (Screenshot provided by Gustavo Lima) | ||
A detailed [https://strucbio.biologie.uni-konstanz.de/pub/xds%20%20prog%20installation%20in%20WSL%20(Lata%20Panicker).pdf writeup for Ubuntu 20.04 LTS] was provided by Dr Lata Panicker, SO(G), BARC, India. | |||
== See also == | == See also == | ||
[[Cluster Installation]] | [[Cluster Installation]] |