Skip to content

Commit

Permalink
[squashme] Enhance Windows build instructions
Browse files Browse the repository at this point in the history
Tester feedback has helped shape this.
  • Loading branch information
chromatic committed Feb 24, 2024
1 parent 31bb84b commit 1ab724a
Showing 1 changed file with 20 additions and 4 deletions.
24 changes: 20 additions & 4 deletions doc/build-windows.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ After the bash shell is active, you can follow the instructions below, starting
with the "Cross-compilation" section. Compiling the 64-bit version is
recommended but it is possible to compile the 32-bit version.

Some people have reported trouble with these steps and recommend that you apply all relevant Windows updates. Also be sure
to enable virtualization in your BIOS if necessary.

Cross-compilation
-------------------

Expand All @@ -59,6 +62,16 @@ A host toolchain (`build-essential`) is necessary because some dependency
packages (such as `protobuf`) need to build host utilities that are used in the
build process.

## Get the Source Code

To build Dogecoin from source code, you'll need the source code. Either check it out via `git` or download
a zip file. (Look at the green "<> Code" button on [the Dogecoin GitHub repository](https://github.com/dogecoin/dogecoin/)).

Make sure this code is available in your Ubuntu directory. If you've unzipped a single downloaded file, you may need to change
the permissions of all extracted files with command like:

sudo chmod -R <your_username> .

## Building for 64-bit Windows

To build executables for Windows 64-bit, install the following dependencies:
Expand All @@ -77,6 +90,10 @@ example /usr/src/dogecoin, AND not under, for example, /mnt/d/dogecoin.
If this is not the case the dependency autoconf scripts will fail (silently.)
This means you cannot use a directory that is located directly on the host Windows file system to perform the build.

To identify your version of WSL, run the command:

wsl -l -v

If using WSL 1, you'll need to turn off WSL Support for Win32 applications temporarily, or you will get ABI errors and format errors for some .o files.

If using WSL 1 then build using:
Expand All @@ -101,11 +118,10 @@ If using WSL 2 then you should be able to build just with:
CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/
make

Note that you can use the `-j` flag with any `make` command to build in parallel. For example, `make -j4` can use up to 4 cores/threads, if your
processor supports that. This can speed up building, but it can be more difficult to find warnings and errors.
In either case, be aware that if the first `make` invocation fails, you will see further errors during the `./configure` and second `make` stages. Please
report any errors with this in mind.

Be aware that if the first `make` invocation fails, you will see further errors during the `./configure` and second `make` stages. Please report
any errors with this in mind.
Also be careful using the `-j` flag with any `make` command. People have reported strange compilation errors when doing so.

## Building for 32-bit Windows

Expand Down

0 comments on commit 1ab724a

Please sign in to comment.