Skip to content

Commit 21f83b0

Browse files
committed
Update Linux build instructions
1 parent ddf472d commit 21f83b0

1 file changed

Lines changed: 27 additions & 34 deletions

File tree

README.md

Lines changed: 27 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -70,16 +70,6 @@ which brings up the following options:
7070
Usage: ./install.sh [OPTION]...
7171
Manage the installation of libbitcoin-server.
7272
Script options:
73-
--with-icu Compile with International Components for Unicode.
74-
Since the addition of BIP-39 and later BIP-38
75-
support, libbitcoin conditionally incorporates ICU
76-
to provide BIP-38 and BIP-39 passphrase
77-
normalization features. Currently
78-
libbitcoin-explorer is the only other library that
79-
accesses this feature, so if you do not intend to
80-
use passphrase normalization this dependency can
81-
be avoided.
82-
--build-icu Build ICU libraries.
8373
--build-boost Build Boost libraries.
8474
--build-secp256k1 Build libsecp256k1 libraries.
8575
--build-dir=<path> Location of downloaded and intermediate files.
@@ -101,46 +91,49 @@ In order to successfully execute `install.sh` a few requirements need to be met.
10191
* [Automake](https://www.gnu.org/software/automake/)
10292
* [libtool](https://www.gnu.org/software/libtool/)
10393
* [pkg-config](https://www.freedesktop.org/wiki/Software/pkg-config/)
94+
* [wget](https://www.gnu.org/software/wget/)
10495
* [git](https://git-scm.com/)
105-
* [curl](https://www.gnu.org/software/curl/)
10696

10797
The corresponding packages can be installed with the following command:
10898

10999
```bash
110-
$ sudo apt install build-essential curl git autoconf automake pkg-config libtool
100+
$ sudo apt install build-essential wget git autoconf automake pkg-config libtool
111101
```
112102

113103
#### Build
114-
Create a new directory (e.g. `/home/user/libbitcoin`), then use git to fetch the latest repository from GitHub by issuing the following command from within this directory:
104+
Create a new project directory (e.g. `/home/user/libbitcoin-server`), then use wget to fetch the latest `install.sh` from GitHub by issuing the following command from within this directory:
115105

116106
```bash
117-
git clone https://github.com/libbitcoin/libbitcoin-server
107+
wget https://raw.githubusercontent.com/libbitcoin/libbitcoin-server/master/install.sh
108+
chmod +x install.sh
118109
```
119110

120-
Enter the project directory `cd libbitcoin-server` and start the build with the following command:
111+
Start the build with the following command:
121112

122113
```bash
123-
$ ./install.sh --prefix=/home/user/libbitcoin/build/release_static/ --build-secp256k1 --build-boost --disable-shared
114+
$ ./install.sh --prefix=/home/user/libbitcoin/install/release_static/ --build-dir=/home/user/libbitcoin/build --build-secp256k1 --build-boost --disable-shared
124115
```
125116

126117
This will build the libbitcoin-server executable as a static release with no [CPU extensions](#cpu-extensions) built in. Use only absolute path names for prefix dir. A successful build will create the following directory/file structure:
127118

128119
```
129-
~/bitcoin/libbitcoin/
130-
~/bitcoin/libbitcoin/build/
131-
~/bitcoin/libbitcoin/build/release_static/
132-
~/bitcoin/libbitcoin/build/release_static/bin/
133-
~/bitcoin/libbitcoin/build/release_static/etc/
134-
~/bitcoin/libbitcoin/build/release_static/include/
135-
~/bitcoin/libbitcoin/build/release_static/lib/
136-
~/bitcoin/libbitcoin/build/release_static/share/
137-
~/bitcoin/libbitcoin/build/release_static/share/doc/
138-
~/bitcoin/libbitcoin/build/release_static/share/doc/libbitcoin-database/
139-
~/bitcoin/libbitcoin/build/release_static/share/doc/libbitcoin-network/
140-
~/bitcoin/libbitcoin/build/release_static/share/doc/libbitcoin-node/
141-
~/bitcoin/libbitcoin/build/release_static/share/doc/libbitcoin-server/
142-
~/bitcoin/libbitcoin/build/release_static/share/doc/libbitcoin-system/
143-
~/bitcoin/libbitcoin/libbitcoin-node
120+
~/libbitcoin/
121+
~/libbitcoin/build/
122+
...
123+
~/libbitcoin/install/
124+
~/libbitcoin/install/release_static/
125+
~/libbitcoin/install/release_static/bin/
126+
~/libbitcoin/install/release_static/etc/
127+
~/libbitcoin/install/release_static/include/
128+
~/libbitcoin/install/release_static/lib/
129+
~/libbitcoin/install/release_static/share/
130+
~/libbitcoin/install/release_static/share/doc/
131+
~/libbitcoin/install/release_static/share/doc/libbitcoin-database/
132+
~/libbitcoin/install/release_static/share/doc/libbitcoin-network/
133+
~/libbitcoin/install/release_static/share/doc/libbitcoin-node/
134+
~/libbitcoin/install/release_static/share/doc/libbitcoin-server/
135+
~/libbitcoin/install/release_static/share/doc/libbitcoin-system/
136+
~/libbitcoin/libbitcoin-server
144137
```
145138
Now enter the bin directory and [fire up](#running-bs) your libbitcoin server.
146139

@@ -162,7 +155,7 @@ To build libbitcoin-server with these extensions use the `--enable-feature` para
162155
This command will create a static release build with all supported CPU extensions (if supported by the system). Building libbitcoin with unsupported CPU extensions might work but will lead to crashes at runtime.
163156

164157
```bash
165-
$ CFLAGS="-O3" CXXFLAGS="-O3" ./install.sh --prefix=/home/user/libbitcoin/build/release_static/ --build-dir=/home/user/libbitcoin/build/temp --build-secp256k1 --build-boost --disable-shared --enable-ndebug --enable-shani --enable-avx2 --enable-sse41 --enable-isystem
158+
$ ./install.sh --prefix=/home/user/libbitcoin/install/release_static/ --build-dir=/home/user/libbitcoin/build --build-secp256k1 --build-boost --disable-shared --enable-ndebug --enable-shani --enable-avx2 --enable-sse41 --enable-isystem
166159
```
167160

168161
You can check if the optimizations have been built in your binary with the following command:
@@ -199,9 +192,9 @@ $ ./bs --help
199192
The response should look like this:
200193

201194
```
202-
Usage: bs [-abdfhiklnrstvw] [--config value]
195+
Usage: bs [-abdfhiklnrsv] [--config value] [--test value] [--write value]
203196
204-
Info: Runs a full bitcoin server.
197+
Info: Runs a full bitcoin node server.
205198
206199
Options (named):
207200

0 commit comments

Comments
 (0)