Known issues

Launcher and Common

Please see the wsldl document.

glibc

The default glibc is optimized for the new kernel and uses syscall, which is not implemented in WSL1.

If you don’t use glibc with a patch that isn’t the mainline, your instance won’t start.

You can use glibc-linux4ᴬᵁᴿ package instead.

You can install from archlinuxcn community repository (can auto-update, recommend)

echo '[archlinuxcn]
Server = https://repo.archlinuxcn.org/$arch' >> /etc/pacman.conf
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring && sudo pacman -S glibc-linux4

or you can install from AUR helper

yay -S glibc-linux4

fakeroot

fakeroot is using SYSV IPC by default. but WSL1 does not support it now.

You can use fakeroot-tcpᴬᵁᴿ package instead. (WSL2 doesn’t require that)

Download fakeroot-tcp-1.23-1-x86_64.pkg.tar.xz and run pacman -U fakeroot-tcp-1.23-1-x86_64.pkg.tar.xz to install.

Qt5

qt >=5.10 library doesn’t work in WSL1. This is an issue with WSL.(Please see Microsoft/WSL#3023)

Please execute this line on root: strip --remove-section=.note.ABI-tag /usr/lib/libQt5Core.so.5

MySQL 8/MariaDB

MySQL >=8 uses the native AIO interface by default. WSL1 does not support it, so you need to configure it. Edit /etc/my.cnf.d/server.cnf for add innodb_use_native_aio=0 to [mysqld] section.

[mysqld]
innodb_use_native_aio=0

D-Bus

Systemd D-Bus daemon doesn’t work in WSL1. We recommend using dbus-x11ᴬᵁᴿ. Download dbus-x11-1.12.16-1-x86_64.pkg.tar.xz and run pacman -U dbus-x11-1.12.16-1-x86_64.pkg.tar.xz to install.

For start D-Bus daemon, run:

sudo mkdir /run/dbus -p
sudo dbus-daemon --system

systemd/systemctl

If you’re using WSL 0.67.6 and above (see wsl --version), systemd is natively supported. To enable it, edit /etc/wsl.conf and then restart the distro.

[boot]
systemd=true

If you’re using an older version of WSL, we recommend using a systemctl alternative script or bottle for apps that require it.

WSL1 / WSL2

You can use a systemctl alternative script. However, this is only partially compatible.

Download systemd-altctl-1.4.4181-2-any.pkg.tar.xz and run pacman -U systemd-altctl-1.4.4181-2-any.pkg.tar.xz to install. Remember to check the releases page for a newer version.

WSL2

You can use systemd bottle “subsystemctl”, “genie”, “wsl-distrod” or “bottled-shell”.

Using any of the aformentioned solutions, will allow you to run systemd completely.

subsystemctl

You can download PKGBUILD and build it.

See here for how to use it.

genie

You can use PKGBUILDs from here.

See here for how to use it.

Intel Graphics

ArchWSL may not properly load the Intel WSL driver by default, which will make it impossible to use the D3D12 driver on Intel graphics cards.

The cause of this problem is that the Intel WSL driver files link against libraries that do not exist on ArchLinux, you can manually fix them to make it work.

You need to use ldd to see which libraries they are linked with, eg: ldd /usr/lib/wsl/drivers/iigd_dch_d.inf_amd64_49b17bc90a910771/*.so, and then look for libraries marked not found. Then check whether there are corresponding packages in the ArchLinux package repository. If so, install them, and the problem may be solved. If you cannot find the corresponding library file in the software package warehouse, it may be that the version suffix of the library file is different, such as libedit.so.0.0.68 and libedit.so.2, then you can try to It creates a soft link to the existing version.

Issue: #308


Back to top

Copyright © 2020 Wsldl-pg Documentation Team. Distributed by Creative Commons Attribution 4.0 International License.