Compiling GS++
This article is intended for the GS++ developers. I hope other people find it useful.
I want to run a BCH SLP graph search server, but I’m having trouble compiling the code.
About me:
I have a degree in Computer Science and 10 years work experience. I also love making street art. I use my computer-controlled laser cutter to make stencils. Then I send building owners anonymous letters asking if I can use the stencils on their wall to make art. I’m hoping I can further the BCH SLP NFT world and promote my art at the same time.
My set up:
I got a beefy server from a provider who allows full node wallets and has enough disk space to run a node (350Gb). It’s based in Los Angelis under the domain bchd.la1.aoe.art. Bitcoind is running and has the up-to-date BCH chain. I also installed Boost, SWIG 3 and gRPC.
My gs++ compile time bug:
After I “cmake ..” I run “make” (without the -j) and get:
“error: invalid use of incomplete type” on line 906 of the file “type_traits
”
Doing some research, the nlohmann library lets a program use JSON objects in C++ but the dynamic object declaration is a little non-standard for some C++ compilers. One fix is to change the order in which files are included when the library is used.
When I try running “make nlohmann-json
” I get the same error.
In the file unit-concepts.cpp, I moved line 32 “#include <nlohmann/json.hpp>
” up to line 29, just above “#include "doctest_compatibility.h"
” but that didn’t work.
I then tried commenting out all the code in the unit-concepts.cpp file to be sure I was on the right track. However, this time when I compiled, I got an unrelated error:
“/usr/local/bin/grpc_cpp_plugin: error while loading shared libraries: libgrpc_plugin_support.so.1.41: cannot open shared object file: No such file or directory
”
That sounds like a permissions thing, but I still want to solve the problem with the nlohmann library.
Thank you for your help!