Merge #399: doc: clearer build documentation

3ed255f1174329b71b3f4b711f1db8f99fd81cad doc: clearer build documentation (Antoine Poinsot)

Pull request description:

  They weren't the clearest. Someone was confused they couldn't build the GUI with an old `cargo`. Make it clearer.

ACKs for top commit:
  darosior:
    self-ACK 3ed255f1174329b71b3f4b711f1db8f99fd81cad -- trivial documentation

Tree-SHA512: 22285c75c2df8d389005519f57691182cfd979bac707f036933a3ddd96a8cbef8bcbd841dcb2d3630809054265698ae5474525a51f14b1c45f9a3255c286524c
This commit is contained in:
Antoine Poinsot 2023-04-03 18:14:35 +02:00
commit 64ab6eba79
No known key found for this signature in database
GPG Key ID: E13FC145CD3F4304

View File

@ -11,7 +11,13 @@ that had the chance to be reviewed and distributed by third parties, as well as
community). The minimum supported Rust version for `lianad` currently is `1.48`, that is the
version of [`rustc` shipped in Debian stable](https://packages.debian.org/stable/rustc). (It is also
inferior to the latest version of `rustc` supported by
[`mrustc`](https://github.com/thepowersgang/mrustc/) supported at the time of writing, `1.54`).
[`mrustc`](https://github.com/thepowersgang/mrustc/) at the time of writing, `1.54`).
If you want to not only build the daemon but the whole wallet including the GUI, you'll
unfortunately have to use a more recent `cargo`. The minimum version supported by the GUI at the
moment is `1.65`. You will most likely have to [manually download
it](#by-manually-downloading-the-latest-stable-version) or [use `rustup`](#through-rustup) to
install such a recent compiler.
## Getting `Cargo`
@ -65,12 +71,12 @@ Some package managers distribute a version of `rustup`. Failing that, you can al
## Building the project
Once you've got Cargo installed, building the project is a simple `cargo` invocation away:
Once you've got Cargo, building the project is a simple `cargo` invocation away.
To only build the daemon, run it from the root of the repository:
```
$ cargo build --release
```
Make sure not to forget the `--release`, or you would build without optimizations otherwise.
The `lianad` and `liana-cli` binaries will be in the `target/` directory at the root of the
repository:
```
@ -78,12 +84,18 @@ $ ls target/release/
build deps examples incremental liana-cli liana-cli.d lianad lianad.d libliana.d libliana.rlib
```
To build the GUI you'll need to first install its [build and runtime
dependencies](https://github.com/wizardsardine/liana/tree/master/gui#dependencies), then do the same
but in the [`gui/`](../gui/) folder present at the root of the repository:
To build the whole wallet including the GUI, you'll need to install its [build and runtime
dependencies](https://github.com/wizardsardine/liana/tree/master/gui#dependencies) first. Then run
the same command as above within the [`gui/`](../gui/) folder present at the root of the repository:
```
$ cd gui/
$ cargo build --release
```
The `liana-gui` binary will be in the `target/` folder:
```
$ ls target/release/
build deps examples incremental liana-gui liana-gui.d libliana_gui.d libliana_gui.rlib
```
Whether your are building the whole wallet or only the daemon, make sure not to forget the
`--release` command line option. You would otherwise build without optimizations.