Announcements

Please join us for our next Socratic Seminar. A special thank you to our host Primal Burger, for the event space. Please support them by buying their delicious food or a beverage.

If you can't make it to the main event please join us at Lutz Tavern around 9PM here.

Special Thanks | Mentions

Rules

  • Respect people's privacy
    • No Photos / Sequenced Photos
    • No Audio Recording
    • No Phones in your shirt front pocket camera out.
  • Chatham House Rules
  • Interaction and asking questions are encouraged!

Requests

  • A guest speaker for January 27th 2025

Schedule

  • 6:00pm - 6:30pm: Arrive, socialize, and grab some food.
  • 6:30pm - 7:30pm: Libbitcoin Presentation
  • 7:30pm - 8:00pm: Bitcoin Development Discussions

Bitcoin Dev news

Bitcoin General News

Tech news

Libbitcoin Server

Why?

The primary reason would be to not be dependent on another Bitcoin Core based client implementation.

There are also many built in protocols

  • Stratum v2
  • Electrs
  • bitcoind
  • Web
  • ZMQ
  • Explorer

Prep

  • Host (Computer)
  • Internet
  • Time (1 hour+)

Sync

Results

Installation

You will need a host that acts like a server, this would be something ideally running Linux, but could be Windows or MacOS. Libbitcoin does require boost >= 1.86.0. This needs to be installed before building and configuring. The install.sh file that is included did not fetch/build/install boost.

This required me to run the following shell commands

cd ~
wget https://archives.boost.io/release/1.86.0/source/boost_1_86_0.tar.gz
tar -xzf boost_1_86_0.tar.gz
cd boost_1_86_0
./bootstrap.sh --prefix=/usr/local
sudo ./b2 -j$(nproc) install
sudo ldconfig

But wait there is more! Time to ensure that we have libsecp256k1 installed too.

cd ~
git clone https://github.com/bitcoin-core/secp256k1.git
cd secp256k1
./autogen.sh
./configure --prefix=/usr
make -j$(nproc)
sudo make install
sudo ldconfig

Now run this. (Install Script)

./install.sh --prefix=/home/<username>/<libbitcoin prefix> --disable-shared

Building on an 8 core machine Xeon E5-2620 takes about 20 minutes. Now we can build and install Libbitcoin server. This build process failed on GCC with a segmentation fault. Clang 18.x seems to work just fine.

Installation Libbitcoin Node

After doing the above steps we are able to run this command on Ubuntu

./install.sh --prefix=/home/<user>/development/libbitcoin/build/release_static/ --build-secp256k1 --build-boost --disable-shared

Running

Out of the box most things don't seem to work overall. The first is the suggested config file is out of date use Config for v4.0.

You can start libbitcoin with ./bn or add your config file with ./bn --config ./bn.cfg where bn.cfg is your configuration file.

Problems

  1. Just stops syncing ...
  2. Fresh Ubuntu 24.04 will not build without Segfault
  3. Config isn't properly documented
  4. All connections are broken on startup?
  5. Disk full error on Ubuntu startup