aboutsummaryrefslogtreecommitdiff
path: root/doc/build-windows.md
diff options
context:
space:
mode:
authorAaron Clauson <aaron@sipsorcery.com>2020-06-29 13:25:59 +0100
committerAaron Clauson <aaron@sipsorcery.com>2020-06-29 13:25:59 +0100
commit21a65756f558a2bd50e71c6dfb04143533e59f76 (patch)
treedbe290244fe64acf2ce72b3229c2b6360f832a60 /doc/build-windows.md
parent19612ca2eb2e335c8ccc9c0f33421df22f1cc3b6 (diff)
downloadbitcoin-21a65756f558a2bd50e71c6dfb04143533e59f76.tar.xz
Add Windows WSL build recommendation to temporarily disable Win32 PE support.
Diffstat (limited to 'doc/build-windows.md')
-rw-r--r--doc/build-windows.md7
1 files changed, 7 insertions, 0 deletions
diff --git a/doc/build-windows.md b/doc/build-windows.md
index d3dc467f19..28b6aceb3c 100644
--- a/doc/build-windows.md
+++ b/doc/build-windows.md
@@ -91,15 +91,22 @@ Note that for WSL the Bitcoin Core source path MUST be somewhere in the default
example /usr/src/bitcoin, AND not under /mnt/d/. If this is not the case the dependency autoconf scripts will fail.
This means you cannot use a directory that is located directly on the host Windows file system to perform the build.
+Additional WSL Note: WSL support for [launching Win32 applications](https://docs.microsoft.com/en-us/archive/blogs/wsl/windows-and-ubuntu-interoperability#launching-win32-applications-from-within-wsl)
+results in `Autoconf` configure scripts being able to execute Windows Portable Executable files. This can cause
+unexpected behaviour during the build, such as Win32 error dialogs for missing libraries. The recommended approach
+is to temporarily disable WSL support for Win32 applications.
+
Build using:
PATH=$(echo "$PATH" | sed -e 's/:\/mnt.*//g') # strip out problematic Windows %PATH% imported var
+ sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status" # Disable WSL support for Win32 applications.
cd depends
make HOST=x86_64-w64-mingw32
cd ..
./autogen.sh # not required when building from tarball
CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/
make
+ sudo bash -c "echo 1 > /proc/sys/fs/binfmt_misc/status" # Enable WSL support for Win32 applications.
## Depends system