You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+19-26Lines changed: 19 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@
14
14
</div>
15
15
16
16
## tl;dr
17
-
This is the **server component of libbitcoin v4**. It integrates the basic components and offers a **high performance Bitcoin full node** with a comprehensive set of client-server interfaces like **bitcoind, electrum and stratum** as well as an intergrated**block explorer**. It makes full use of the available hardware, internet connection and availabe RAM and CPU so you can sync the Bitcoin blockchain from genesis, today and in the future.
17
+
This is the **server component of libbitcoin v4**. It integrates the basic components and offers a **high performance Bitcoin full node** with a comprehensive set of client-server interfaces like **bitcoind, electrum and stratum** as well as an integrated**block explorer**. It makes full use of the available hardware, internet connection and available RAM and CPU so you can sync the Bitcoin blockchain from genesis, today and in the future.
18
18
19
19
If you follow this README you will be able to build, run and monitor your own libbitcoin server (bs). Libbitcoin is a multi platform software that works on Linux, Windows and OSX (Intel and ARM).
20
20
@@ -56,12 +56,12 @@ The build process is essentially the same on Linux, macOS, and other Unix-like s
56
56
57
57
### Linux
58
58
59
-
Linux users can build libbitcoin node with the provided installation script `install.sh` that uses Autotools and pkg-config to first build the needed dependencies (boost, libpsec256) and then fetches the latest libbitcoin projects (libbitcoin-system, libbitcoin-database, libbitcoin-network, libbitcoin-node and libbitcoin-server) from GitHub and builds the stack bottom up to the libbitcoin-server executable - `bs`.
59
+
Linux users can build libbitcoin node with the provided installation script `install.sh` that uses Autotools and pkg-config to first build the needed dependencies (boost, libsecp256k1) and then fetches the latest libbitcoin projects (libbitcoin-system, libbitcoin-database, libbitcoin-network, libbitcoin-node and libbitcoin-server) from GitHub and builds the stack bottom up to the libbitcoin-server executable - `bs`.
60
60
61
61
You can issue the following command to check for further parameterization of the install script:
62
62
63
63
```bash
64
-
$ install.sh --help
64
+
$ ./install.sh --help
65
65
```
66
66
67
67
which brings up the following options:
@@ -86,7 +86,7 @@ In order to successfully execute `install.sh` a few requirements need to be met.
86
86
87
87
#### Requirements
88
88
* Base OS: Ubuntu 24.04.3 LTS (Noble Numbat)
89
-
* C++13 compiler (gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04))
89
+
* C++20 compiler (gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04))
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:
104
+
Use wget to fetch the latest `install.sh` from GitHub by issuing the following command from anywhere in your filesystem:
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:
117
+
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 from within `~/libbitcoin/`will create the following directory/file structure:
To build libbitcoin-server with these extensions use the `--enable-feature` parameters like:
141
+
To build libbitcoin-server with these extensions use the `--enable-*` parameters like:
149
142
150
143
- --enable-shani
151
144
- --enable-sse41
@@ -155,7 +148,7 @@ To build libbitcoin-server with these extensions use the `--enable-feature` para
155
148
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.
You can check if the optimizations have been built in your binary with the following command:
@@ -305,7 +298,7 @@ In this case it took the node 11053 seconds (or 184 minutes) to sync up to Block
305
298
306
299
As the node aims to sync the Blockchain as fast as possible, we assume that if the computer is powerful enough, the limiting factor for syncing the chain is your internet connection - you simply can't sync faster than the time needed to download the Blockchain.
307
300
308
-
The following diagram shows the performance data extracted from various IBDs (bs milestone and full validation, Core 30 Standard and AssumeValid) on a 64 Core, 256MB RAM machine running Ubuntu.
301
+
The following diagram shows the performance data extracted from various IBDs (bs milestone and full validation, Core 30 Standard and AssumeValid) on a 64 Core, 256GB RAM machine running Ubuntu.
0 commit comments