updates READMEs re electrum-ecc

This commit is contained in:
SomberNight
2024-10-07 17:04:14 +00:00
parent f35437f03c
commit 581082d5bb
3 changed files with 35 additions and 16 deletions

View File

@@ -23,29 +23,37 @@ is a TL;DR:
```
$ sudo apt-get install libsecp256k1-dev
$ python3 -m pip install --user ".[gui,crypto]"
$ ELECTRUM_ECC_DONT_COMPILE=1 python3 -m pip install --user ".[gui,crypto]"
```
### Not pure-python dependencies
#### Qt GUI
If you want to use the Qt interface, install the Qt dependencies:
```
$ sudo apt-get install python3-pyqt6
```
#### libsecp256k1
For elliptic curve operations,
[libsecp256k1](https://github.com/bitcoin-core/secp256k1)
is a required dependency:
is a required dependency.
If you "pip install" Electrum, by default libsecp will get compiled locally,
as part of the `electrum-ecc` dependency. This can be opted-out of,
by setting the `ELECTRUM_ECC_DONT_COMPILE=1` environment variable.
For the compilation to work, besides a C compiler, you need at least:
```
$ sudo apt-get install automake libtool
```
If you opt out of the compilation, you need to provide libsecp in another way, e.g.:
```
$ sudo apt-get install libsecp256k1-dev
```
Alternatively, when running from a cloned repository, a script is provided to build
libsecp256k1 yourself:
```
$ sudo apt-get install automake libtool
$ ./contrib/make_libsecp256k1.sh
```
#### cryptography
Due to the need for fast symmetric ciphers,
[cryptography](https://github.com/pyca/cryptography) is required.
@@ -54,6 +62,8 @@ Install from your package manager (or from pip):
$ sudo apt-get install python3-cryptography
```
#### hardware-wallet support
If you would like hardware wallet support,
[see this](https://github.com/spesmilo/electrum-docs/blob/master/hardware-linux.rst).

View File

@@ -21,6 +21,10 @@ Run install (this should install most dependencies):
### 2. Install `libsecp256k1`
[comment]: # (technically the dll should be put into site-packages/electrum_ecc/,
but putting it into electrum/ also works because of the `os.add_dll_directory` call in
electrum/__init__.py)
[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` (or newer `libsecp256k1-*.dll`),

View File

@@ -15,18 +15,23 @@ $ cd electrum
$ git submodule update --init
```
Run install (this should install most dependencies):
### 2. Prepare for compiling libsecp256k1
To be able to build the `electrum-ecc` package from source
(which is pulled in when installing Electrum in the next step),
you need:
```
$ brew install autoconf automake libtool coreutils
```
### 3. Install Electrum
Run install (this should install the dependencies):
```
$ python3 -m pip install --user -e ".[gui,crypto]"
```
### 2. Install libsecp256k1
```
$ brew install autoconf automake libtool coreutils
$ contrib/make_libsecp256k1.sh
```
### 3. Run electrum:
### 4. Run electrum:
```
$ ./run_electrum
```