2,652
edits
(→WSL2) |
m (→WSL2) |
||
(6 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 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). | 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). | ||
Line 128: | Line 129: | ||
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/]). | 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] 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 | A lot of technical detail is at [https://docs.microsoft.com/en-us/windows/wsl/compare-versions] . | ||
CCP4 supports WSL-1 ; see info at http://www.ccp4.ac.uk/download/#os=wsl . | |||
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 with WSL, one has to say in the shell window | |||
export DISPLAY=:0 | export DISPLAY=:0 | ||
before running the program. Running XDSGUI under WSL's Ubuntu may require installation of a few packages with e.g. | before running the program. Running XDSGUI under WSL's Ubuntu may require installation of a few packages with e.g. | ||
Line 151: | Line 156: | ||
I got CCP4 7.1 including coot-0.9.3 to work on Ubuntu 20.04 LTS with Xming but not with VcXsrc. Getting the Xserver to work properly requires addition of 3 lines in ~/.bashrc : | I got CCP4 7.1 including coot-0.9.3 to work on Ubuntu 20.04 LTS with Xming but not with VcXsrc. Getting the Xserver to work properly requires addition of 3 lines in ~/.bashrc : | ||
export DISPLAY=$(grep -m 1 nameserver /etc/resolv.conf | awk '{print $2}'):0.0 | export DISPLAY=$(grep -m 1 nameserver /etc/resolv.conf | awk '{print $2}'):0.0 | ||
# (David Waterman) if the above does not work, use: export DISPLAY=$(ip route|awk '/^default/{print $3}'):0.0 | |||
export LIBGL_ALWAYS_INDIRECT=1 | export LIBGL_ALWAYS_INDIRECT=1 | ||
source /opt/xtal/ccp4-7.1/bin/ccp4.setup-sh | source /opt/xtal/ccp4-7.1/bin/ccp4.setup-sh | ||
Line 157: | Line 163: | ||
echo "[wsl2]" > .wslconfig | echo "[wsl2]" > .wslconfig | ||
echo "kernelCommandLine = vsyscall=emulate" >> .wslconfig | echo "kernelCommandLine = vsyscall=emulate" >> .wslconfig | ||
to make the shelx* programs happy (see https://github.com/microsoft/WSL/issues/4694 ), and "vsyscall=emulate" appear in /proc/cmdline. After creating the file, WSL must be restarted (or the machine booted). | to make the shelx* programs happy (see https://github.com/microsoft/WSL/issues/4694 ), and "vsyscall=emulate" appear in /proc/cmdline. After creating the file, WSL must be restarted with "wsl.exe --shutdown" (or the machine booted). | ||
A few libraries also needed installation: | A few libraries also needed installation (tcsh is needed by CCP4, the others are graphics libraries): | ||
sudo apt install tcsh libqt5opengl5 libqt5printsupport5 libqt5gui5 libxcb-render0 libxcb-shm0 libglu1-mesa | sudo apt install tcsh libqt5opengl5 libqt5printsupport5 libqt5gui5 libxcb-render0 libxcb-shm0 libglu1-mesa | ||
In addition, the Xming Xlaunch needed a box checked that prevents access control; and the Windows firewall needed a rule for port 6000 as shown in https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2 . | In addition, the Xming Xlaunch needed a box checked that prevents access control; and the Windows firewall needed a rule for port 6000 as shown in https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2 . | ||
Performance of coot is good enough for me (100 frames/sec for "Spin view" of a thaumatin molecule). XDSGUI and multi-threaded XDS work as expected. | It seems that XLaunch has to be started before the Ubuntu terminal in which I start the graphical application. | ||
Performance of coot is good enough for me (100 frames/sec for "Spin view" of a thaumatin molecule, on a Dell XPS13 7390 2-in-1 notebook). XDSGUI and multi-threaded XDS work as expected. For reading .h5 files, the NEGGIA plugin works correctly, but the DURIN plugin currently crashes (a [https://github.com/DiamondLightSource/durin/issues/22 bug] has been reported). | |||
Update concerning coot 0.9.5: it crashes for me when using XMing. Other applications, like ccp4i, still work. The error message is: | |||
(set-display-intro-string "Good afternoon ,,,. Welcome to Coot 0.9.5") | |||
(set-display-lists-for-maps 1) | |||
coot-bin: Fatal IO error 11 (Resource temporarily unavailable) on X server 172.17.112.1:0.0. | |||
coot-bin: Fatal IO error 11 (Resource temporarily unavailable) on X server 172.17.112.1:0.0. | |||
. ------ Coot crashed - trying to diagnose ----- | |||
ldd -r on guile gives: | |||
linux-vdso.so.1 (0x00007fffd4f93000) | |||
libguile.so.17 => /opt/xtal/ccp4-7.1/libexec/../lib/libguile.so.17 (0x00007f7c5df33000) | |||
libgmp.so.10 => /opt/xtal/ccp4-7.1/libexec/../lib/libgmp.so.10 (0x00007f7c5dcb2000) | |||
and more lines with library names that exist on the disk. | |||
'''I tried MobaXterm (private edition) and this works better - coot runs!''' | |||
== See also == | == See also == | ||
[[Cluster Installation]] | [[Cluster Installation]] |