user95678: I am trying to use c++ code from the book of Antonopoulos for some time now and I seem to lack an include named bitcoin/bitcoin.hpp.
To compile the code the g++ compiler gets a pkg-config input with libbitcoin. So I suspect I would have to install this library. 
Since the book does not mention to install anything else then bitcoin core I really wonder if parts of libbitcoin have originally been part of bitcoin core and have been excluded at some point. 
The other explanation would be that the author forgot to mention it. But it seems a bit overload that I have to install another complete system for a full node (libbitcoin) to be able to run the code since the book explicitly says that running a full node with bitcoin core should suffice. 
It is just a minor thing and probably laughable for an expert in the field but I am also learning how to use pkg-config and the compiler by doing this. 
There have been suggestions to just install parts of libbitcoin but the developers said it is advisable to install the full thing with the automatic install skript. 
Also, there is libbitcoin-dev, which is a package in debian (I run Raspbian Buster), but I was not able to compile the code with it. 

user25222: The libbitcoin library is a completely separate library and it is not part of the Bitcoin core reference implementation code.
The book code examples has an accompanying actively maintained github repo here. However, extra care is needed for the libbitcoin library dependency as it has new breaking changes. For example, #include <bitcoin/bitcoin.cpp> has been rename to #include <bitcoin/system.hpp>. And no more bc::ec_point. It is possible to install an older compatible version of libbitcoin library, but I prefer to use the latest version and made some adjustment in addr.cpp example code.
I manually build and installed the libbitcoin library to a custom location as suggested here.
mkdir -p /opt/my/libbitcoin/
$ wget https://raw.githubusercontent.com/libbitcoin/libbitcoin/version3/install.sh
$ chmod +x install.sh
$ ./install.sh --prefix=/opt/my/libbitcoin/ --build-boost --disable-shared

And then I build addr.cpp by:
export PKG_CONFIG_PATH=/opt/my/libbitcoin/lib/pkgconfig/
g++ -o addr addr.cpp $(pkg-config --cflags --libs libbitcoin-system) -lgmp

Then run the executable by:
$ ./addr
Public key: 0202a406624211f2abbdc68da3df929f938c3399dd79fac1b51b0e4ad1d26a47aa
Address: 1PRTTaJesdNovgne6Ehcdu1fpEdX7913CK


user208: libbitcoin is not, and was never a part of Bitcoin Core. Both are standalone implementations of the Bitcoin protocol.
Bitcoin Core, in its build process, will create a number of files named "libbitcoin_...". These are just locally generated files that are unrelated to the libbitcoin project.
Bitcoin Core does not have any files with the "hpp" extension. So are you sure you're actually trying to build Bitcoin Core?

95678: <p>I am trying to use <code>c++</code> code from the book of Antonopoulos for some time now and I seem to lack an <code>include</code> named <code>bitcoin/bitcoin.hpp</code>.</p>

<p>To compile the code the <code>g++</code> compiler gets a <code>pkg-config</code> input with <code>libbitcoin</code>. So I suspect I would have to install this library. </p>

<p>Since the book does not mention to install anything else then <code>bitcoin core</code> I really wonder if parts of <code>libbitcoin</code> have originally been part of <code>bitcoin core</code> and have been excluded at some point. </p>

<p>The other explanation would be that the author forgot to mention it. But it seems a bit overload that I have to install another complete system for a full node (<code>libbitcoin</code>) to be able to run the code since the book explicitly says that running a full node with <code>bitcoin core</code> should suffice. </p>

<p>It is just a minor thing and probably laughable for an expert in the field but I am also learning how to use <code>pkg-config</code> and the compiler by doing this. </p>

<p>There have been suggestions to just install parts of <code>libbitcoin</code> but the developers said it is advisable to install the full thing with the automatic install skript. </p>

<p>Also, there is <code>libbitcoin-dev</code>, which is a package in <code>debian</code> (I run Raspbian Buster), but I was not able to compile the code with it. </p>
 25222: <p>The <code>libbitcoin</code> library is a completely separate library and it is not part of the Bitcoin core reference implementation code.</p>
<p>The book code examples has an accompanying actively maintained github repo <a href="https://github.com/bitcoinbook/bitcoinbook" rel="nofollow noreferrer">here</a>. However, extra care is needed for the <code>libbitcoin</code> library dependency as it has new breaking changes. For example, <code>#include &lt;bitcoin/bitcoin.cpp&gt;</code> has been rename to <code>#include &lt;bitcoin/system.hpp&gt;</code>. And no more <code>bc::ec_point</code>. It is possible to install an older compatible version of <code>libbitcoin</code> library, but I prefer to use the latest version and made some adjustment in <code>addr.cpp</code> example code.</p>
<p>I manually build and installed the <code>libbitcoin</code> library to a custom location as suggested <a href="https://github.com/libbitcoin/libbitcoin-system" rel="nofollow noreferrer">here</a>.</p>
<pre><code>mkdir -p /opt/my/libbitcoin/
$ wget https://raw.githubusercontent.com/libbitcoin/libbitcoin/version3/install.sh
$ chmod +x install.sh
$ ./install.sh --prefix=/opt/my/libbitcoin/ --build-boost --disable-shared
</code></pre>
<p>And then I build <code>addr.cpp</code> by:</p>
<pre><code>export PKG_CONFIG_PATH=/opt/my/libbitcoin/lib/pkgconfig/
g++ -o addr addr.cpp $(pkg-config --cflags --libs libbitcoin-system) -lgmp
</code></pre>
<p>Then run the executable by:</p>
<pre><code>$ ./addr
Public key: 0202a406624211f2abbdc68da3df929f938c3399dd79fac1b51b0e4ad1d26a47aa
Address: 1PRTTaJesdNovgne6Ehcdu1fpEdX7913CK
</code></pre>
 208: <p>libbitcoin is not, and was never a part of Bitcoin Core. Both are standalone implementations of the Bitcoin protocol.</p>

<p>Bitcoin Core, in its build process, will create a number of files named "libbitcoin_...". These are just locally generated files that are unrelated to the libbitcoin project.</p>

<p>Bitcoin Core does not have any files with the "hpp" extension. So are you sure you're actually trying to build Bitcoin Core?</p>
