2015-11-03 11:36:09 +01:00
|
|
|
WINDOWS BUILD NOTES
|
|
|
|
====================
|
|
|
|
|
2016-10-18 15:35:10 +02:00
|
|
|
Below are some notes on how to build Dash Core for Windows.
|
2015-11-03 11:36:09 +01:00
|
|
|
|
2020-04-30 12:28:12 +02:00
|
|
|
The options known to work for building Dash Core on Windows are:
|
2015-11-03 11:36:09 +01:00
|
|
|
|
2020-04-30 12:28:12 +02:00
|
|
|
* On Linux, using the [Mingw-w64](https://mingw-w64.org/doku.php) cross compiler tool chain. Ubuntu Bionic 18.04 is required
|
|
|
|
and is the platform used to build the Dash Core Windows release binaries.
|
|
|
|
* On Windows, using [Windows
|
|
|
|
Subsystem for Linux (WSL)](https://docs.microsoft.com/windows/wsl/about) and the Mingw-w64 cross compiler tool chain.
|
|
|
|
* On Windows, using a native compiler tool chain such as [Visual Studio](https://www.visualstudio.com).
|
2017-08-24 07:45:08 +02:00
|
|
|
|
2020-04-30 12:28:12 +02:00
|
|
|
Other options which may work, but which have not been extensively tested are (please contribute instructions):
|
2016-10-18 15:35:10 +02:00
|
|
|
|
2020-04-30 12:28:12 +02:00
|
|
|
* On Windows, using a POSIX compatibility layer application such as [cygwin](https://www.cygwin.com/) or [msys2](https://www.msys2.org/).
|
|
|
|
|
|
|
|
Installing Windows Subsystem for Linux
|
|
|
|
---------------------------------------
|
2016-10-18 15:35:10 +02:00
|
|
|
|
2016-11-27 14:56:52 +01:00
|
|
|
With Windows 10, Microsoft has released a new feature named the [Windows
|
2020-04-30 12:28:12 +02:00
|
|
|
Subsystem for Linux (WSL)](https://docs.microsoft.com/windows/wsl/about). This
|
2017-01-01 12:58:41 +01:00
|
|
|
feature allows you to run a bash shell directly on Windows in an Ubuntu-based
|
2016-11-27 14:56:52 +01:00
|
|
|
environment. Within this environment you can cross compile for Windows without
|
2020-04-30 12:28:12 +02:00
|
|
|
the need for a separate Linux VM or server. Note that while WSL can be installed with
|
|
|
|
other Linux variants, such as OpenSUSE, the following instructions have only been
|
|
|
|
tested with Ubuntu.
|
2016-10-18 15:35:10 +02:00
|
|
|
|
2017-01-01 12:58:41 +01:00
|
|
|
This feature is not supported in versions of Windows prior to Windows 10 or on
|
|
|
|
Windows Server SKUs. In addition, it is available [only for 64-bit versions of
|
2020-04-30 12:28:12 +02:00
|
|
|
Windows](https://docs.microsoft.com/windows/wsl/install-win10).
|
|
|
|
|
|
|
|
Full instructions to install WSL are available on the above link.
|
|
|
|
To install WSL on Windows 10 with Fall Creators Update installed (version >= 16215.0) do the following:
|
|
|
|
|
|
|
|
1. Enable the Windows Subsystem for Linux feature
|
|
|
|
* Open the Windows Features dialog (`OptionalFeatures.exe`)
|
|
|
|
* Enable 'Windows Subsystem for Linux'
|
|
|
|
* Click 'OK' and restart if necessary
|
|
|
|
2. Install Ubuntu
|
|
|
|
* Open Microsoft Store and search for "Ubuntu 18.04" or use [this link](https://www.microsoft.com/store/productId/9N9TNGVNDL3Q)
|
|
|
|
* Click Install
|
2016-10-18 15:35:10 +02:00
|
|
|
3. Complete Installation
|
2020-04-30 12:28:12 +02:00
|
|
|
* Open a cmd prompt and type "Ubuntu1804"
|
2016-10-18 15:35:10 +02:00
|
|
|
* Create a new UNIX user account (this is a separate account from your Windows account)
|
|
|
|
|
2017-01-01 12:58:41 +01:00
|
|
|
After the bash shell is active, you can follow the instructions below, starting
|
|
|
|
with the "Cross-compilation" section. Compiling the 64-bit version is
|
2020-04-30 12:28:12 +02:00
|
|
|
recommended, but it is possible to compile the 32-bit version.
|
2015-11-03 11:36:09 +01:00
|
|
|
|
|
|
|
Cross-compilation
|
|
|
|
-------------------
|
|
|
|
|
2018-09-28 09:55:46 +02:00
|
|
|
Follow the instructions for Windows in [build-cross](build-cross.md)
|
2016-11-27 14:56:52 +01:00
|
|
|
|
|
|
|
Installation
|
|
|
|
-------------
|
|
|
|
|
|
|
|
After building using the Windows subsystem it can be useful to copy the compiled
|
2020-04-30 12:28:12 +02:00
|
|
|
executables to a directory on the Windows drive in the same directory structure
|
2016-11-27 14:56:52 +01:00
|
|
|
as they appear in the release `.zip` archive. This can be done in the following
|
2018-01-16 18:20:28 +01:00
|
|
|
way. This will install to `c:\workspace\dash`, for example:
|
2016-11-27 14:56:52 +01:00
|
|
|
|
2018-01-16 18:20:28 +01:00
|
|
|
make install DESTDIR=/mnt/c/workspace/dash
|
2020-04-30 12:28:12 +02:00
|
|
|
|
|
|
|
You can also create an installer using:
|
|
|
|
|
|
|
|
make deploy
|