You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.7 KiB
62 lines
1.7 KiB
3 years ago
|
# Running Electrum from source on Windows (development version)
|
||
|
|
||
|
## Prerequisites
|
||
|
|
||
|
- [python3](https://www.python.org/)
|
||
|
- [git](https://gitforwindows.org/)
|
||
|
|
||
|
## Main steps
|
||
|
|
||
|
### 1. Check out the code from GitHub:
|
||
|
```
|
||
|
> git clone https://github.com/spesmilo/electrum.git
|
||
|
> cd electrum
|
||
|
> git submodule update --init
|
||
|
```
|
||
|
|
||
|
Run install (this should install most dependencies):
|
||
|
```
|
||
|
> python3 -m pip install --user -e ".[gui,crypto]"
|
||
|
```
|
||
|
|
||
|
### 2. Install `libsecp256k1`
|
||
|
|
||
|
[libsecp256k1](https://github.com/bitcoin-core/secp256k1) is a required dependency.
|
||
|
This is a C library, which you need to compile yourself.
|
||
|
Electrum needs a dll, named `libsecp256k1-0.dll`, placed into the inner `electrum/` folder.
|
||
|
|
||
|
For Unix-like systems, the (`contrib/make_libsecp256k1.sh`) script does this for you,
|
||
|
however it does not work on Windows.
|
||
|
If you have access to a Linux machine (e.g. VM) or perhaps even using
|
||
|
WSL (Windows Subsystem for Linux), you can cross-compile from there to Windows,
|
||
|
and build this dll:
|
||
|
```
|
||
|
$ GCC_TRIPLET_HOST="x86_64-w64-mingw32" ./contrib/make_libsecp256k1.sh
|
||
|
```
|
||
|
|
||
|
Alternatively, MSYS2 and MinGW-w64 can be used directly on Windows, as follows.
|
||
|
|
||
|
- download and install [MSYS2](https://www.msys2.org/)
|
||
|
- run MSYS2
|
||
|
- inside the MSYS2 shell:
|
||
|
```
|
||
|
$ pacman -Syu
|
||
|
$ pacman -S --needed git base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-autotools
|
||
|
$ export PATH="$PATH:/mingw64/bin"
|
||
|
```
|
||
|
`cd` into the git clone, e.g. `C:\wspace\electrum` (auto-mounted at `/c/wspace/electrum`)
|
||
|
```
|
||
|
$ cd /c/wspace/electrum
|
||
|
$ GCC_TRIPLET_HOST="x86_64-w64-mingw32" ./contrib/make_libsecp256k1.sh
|
||
|
```
|
||
|
|
||
|
(note: this is a bit cumbersome, see [issue #5976](https://github.com/spesmilo/electrum/issues/5976)
|
||
|
for discussion)
|
||
|
|
||
|
### 3. Run electrum:
|
||
|
|
||
|
```
|
||
|
> python3 ./run_electrum
|
||
|
```
|
||
|
|