Installation: Difference between revisions
m →XDS package for Macs with Apple M processors: remove ; after commands |
link to XDS backup site Tags: Mobile edit Mobile web edit Advanced mobile edit |
||
| (6 intermediate revisions by the same user not shown) | |||
| Line 6: | Line 6: | ||
=== [[XDS]] package === | === [[XDS]] package === | ||
If you are an academic user, as root (on Ubuntu, use "sudo -i" to become root) | If you are an academic user, as root (on Ubuntu, use "sudo -i" as a separate command, to become root): | ||
<pre> | <pre> | ||
cd /usr/local/bin | cd /usr/local/bin | ||
wget | wget -O- https://xds.mr.mpg.de/XDS-gfortran_Linux_x86_64.tar.gz | tar xzvf - | ||
ln -sf XDS-gfortran_Linux_x86_64/* . | ln -sf XDS-gfortran_Linux_x86_64/* . | ||
# until 2025-05-02 the XDS tarfile for Linux had a different name: | # until 2025-05-02 the XDS tarfile for Linux had a different name: | ||
| Line 15: | Line 15: | ||
# ln -sf XDS-INTEL64_Linux_x86_64/* . | # ln -sf XDS-INTEL64_Linux_x86_64/* . | ||
</pre> | </pre> | ||
In case the above website is unavailable, there is a [https://{{SERVERNAME}}/pub/xds backup site]. | In case the above website is unavailable, there is a [https://{{SERVERNAME}}/pub/xds/current backup site]. | ||
If you don't have root rights, replace /usr/local/bin by $HOME/bin in the first line above, and make sure that $HOME/bin is in your $PATH (google "linux set path" or similar). | If you don't have root rights, replace /usr/local/bin by $HOME/bin in the first line above, and make sure that $HOME/bin is in your $PATH (google "linux set path" or similar). | ||
If you want to process data from the [[Eiger]] detector: see below for plugins that allow XDS to read the .h5 files. Similarly for gzip-ed CBF files as mostly collected at EMBL Hamburg. | If you want to process data from the [[Eiger]] detector: see below for plugins that allow XDS to read the .h5 files. Similarly for gzip-ed CBF files as mostly collected at EMBL Hamburg. | ||
==== System libraries that the XDS package needs ==== | |||
The programs of the XDS package depend on commonly installed libraries. The complete list, with paths and versions, can be obtained on the commandline: | |||
[kay@linux ~]$ ldd $(which xds_par) | |||
linux-vdso.so.1 (0x00007f96ab59d000) | |||
libdl.so.2 => /lib64/libdl.so.2 (0x00007f96ab57a000) | |||
libm.so.6 => /lib64/libm.so.6 (0x00007f96ab49f000) | |||
libgomp.so.1 => /lib64/libgomp.so.1 (0x00007f96ab459000) | |||
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f96ab43f000) | |||
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f96ab43a000) | |||
libc.so.6 => /lib64/libc.so.6 (0x00007f96ab200000) | |||
/lib64/ld-linux-x86-64.so.2 (0x00007f96ab59f000) | |||
If any of the libraries is not available, the affected program does not run but the operating system tells you which library is missing. Until recently, Linux distributions came with these libraries pre-installed. However, recently it came to my attention that a minimal version of Ubuntu 24 may not provide the libgomp.so library. If you run this distribution, your system administrator should install the libgomp1 package. | |||
=== other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]], [[spot2pdb]], [[generate_XDS.INP]] === | === other programs: [[XDS-Viewer]], [[XDSSTAT]], [[XDSCC12]], [[XDSGUI]], [[XSCALE_ISOCLUSTER]], [[spot2pdb]], [[generate_XDS.INP]] === | ||
... 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 | ... 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 -N https://{{SERVERNAME}}/pub/linux_bin/get_folder.sh | ||
chmod +x get_folder.sh | chmod +x get_folder.sh | ||
./get_folder.sh | ./get_folder.sh | ||
| Line 62: | Line 75: | ||
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. | ||
Alternatively, | Alternatively, [https://download.kde.org/stable/kdiff3/ kdiff3] may be installed, or other graphical comparison programs, like meld or tkdiff. vimdiff is also nice, and probably already installed. | ||
For [[Eiger]] data processing, a h5dump binary (version 1.10 req'd for HDF5 data from DLS) and <code>H5ToXDS</code> is installed by the <code>get_folder.sh</code> script into /usr/local/bin. If the script is not used, <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>) - but make sure that h5dump is version 1.10 or higher when processing HDF5 data from DLS. | For [[Eiger]] data processing, a h5dump binary (version 1.10 req'd for HDF5 data from DLS) and <code>H5ToXDS</code> is installed by the <code>get_folder.sh</code> script into /usr/local/bin. If the script is not used, <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>) - but make sure that h5dump is version 1.10 or higher when processing HDF5 data from DLS. | ||
| Line 86: | Line 99: | ||
if [ ! -e /usr/local/bin ]; then mkdir /usr/local/bin; fi | if [ ! -e /usr/local/bin ]; then mkdir /usr/local/bin; fi | ||
cd /usr/local/bin | cd /usr/local/bin | ||
# if the next command produces an error message, use the --insecure option | |||
curl -L -o - https://xds.mr.mpg.de/XDS-OSX_64.tar.gz | tar xzvf - | curl -L -o - https://xds.mr.mpg.de/XDS-OSX_64.tar.gz | tar xzvf - | ||
ln -sf XDS-OSX_64/* . | ln -sf XDS-OSX_64/* . | ||
| Line 113: | Line 127: | ||
if [ ! -e /usr/local/bin ]; then mkdir /usr/local/bin; fi | if [ ! -e /usr/local/bin ]; then mkdir /usr/local/bin; fi | ||
cd /usr/local/bin | cd /usr/local/bin | ||
# if the next command produces an error message, use the --insecure option | |||
curl -L -o - https://xds.mr.mpg.de/XDS-Apple_M1.tar.gz | tar xzvf - | curl -L -o - https://xds.mr.mpg.de/XDS-Apple_M1.tar.gz | tar xzvf - | ||
ln -sf XDS-Apple_M1/* . | ln -sf XDS-Apple_M1/* . | ||
| Line 160: | Line 175: | ||
mkdir -p /usr/local/bin/mac_bin | mkdir -p /usr/local/bin/mac_bin | ||
cd /usr/local/bin/mac_bin | cd /usr/local/bin/mac_bin | ||
# if the next command produces an error message, use the --insecure option | |||
curl -O -R https://{{SERVERNAME}}/pub/mac_bin/get_folder.sh | curl -O -R https://{{SERVERNAME}}/pub/mac_bin/get_folder.sh | ||
chmod +x get_folder.sh | chmod +x get_folder.sh | ||
| Line 167: | Line 183: | ||
mkdir -p /usr/local/bin/mac_bin | mkdir -p /usr/local/bin/mac_bin | ||
cd /usr/local/bin/mac_bin | cd /usr/local/bin/mac_bin | ||
# if the next command produces an error message, use the --insecure option | |||
curl -O -R https://{{SERVERNAME}}/pub/mac_bin/get_folder_silicon.sh | curl -O -R https://{{SERVERNAME}}/pub/mac_bin/get_folder_silicon.sh | ||
chmod +x get_folder_silicon.sh | chmod +x get_folder_silicon.sh | ||
| Line 176: | Line 193: | ||
In order to enable [[Eiger]] data processing, the <code>get_folder.sh</code> (or <code>get_folder_silicon.sh</code>) script | In order to enable [[Eiger]] data processing, the <code>get_folder.sh</code> (or <code>get_folder_silicon.sh</code>) script | ||
# copies Dectris' Neggia library and DLS's Durin library into <code>/usr/local/lib64</code> . NOTE that the names of the native libraries for the Apple Silicon Macs ends with *-Apple-arm64.so | # copies Dectris' Neggia library and DLS's Durin library into <code>/usr/local/lib64</code> . NOTE that the names of the native libraries for the Apple Silicon Macs ends with *-Apple-arm64.so . | ||
# copies [https://www.globalphasing.com GlobalPhasing's] <code>hdf2mini-cbf</code> into <code>/usr/local/bin</code>, but under the name <code>H5ToXds</code> (consider getting a [https://www.globalphasing.com/autoproc/ autoPROC] license!) | # copies [https://www.globalphasing.com GlobalPhasing's] <code>hdf2mini-cbf</code> into <code>/usr/local/bin</code>, but under the name <code>H5ToXds</code> (consider getting a [https://www.globalphasing.com/autoproc/ autoPROC] license!) | ||
# copies <code>h5dump</code> [https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.1/bin/unix/hdf5-1.12.1-Std-macos11_64-clang.tar.gz] into <code>/usr/local/bin</code> | # copies <code>h5dump</code> [https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.1/bin/unix/hdf5-1.12.1-Std-macos11_64-clang.tar.gz] into <code>/usr/local/bin</code> | ||
For XDSGUI, you have a choice between the version for Intel Macs and that for Silicon Macs. Both do work on Silicon Macs, except for the plugin libraries - for these, the correct version (ending with -Apple-arm64.so) must be used together with xdsgui_mac_silicon. | For XDSGUI, you have a choice between the version for Intel Macs and that for Silicon Macs. Both do work on Silicon Macs, except for the plugin libraries - for these, the correct version (ending with -Apple-arm64.so) must be used together with xdsgui_mac_silicon. | ||