Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

local build ERROR #424

Open
code1010111 opened this issue Aug 13, 2021 · 10 comments
Open

local build ERROR #424

code1010111 opened this issue Aug 13, 2021 · 10 comments

Comments

@code1010111
Copy link

Building CXX object src/lib/bitcoin/CMakeFiles/bitcoin_shared.dir/message/header_message.cpp.o
cd /home/zah/RPM/metaverse/build/src/lib/bitcoin && /usr/bin/c++ -DBC_DLL=1 -DBC_STATIC=1 -Dbitcoin_shared_EXPORTS -I/home/zah/RPM/metaverse/contrib -I/home/zah/RPM/metaverse/include -I/home/zah/RPM/metaverse/src/lib/consensus/clone -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -O2 -DNDEBUG -fPIC -o CMakeFiles/bitcoin_shared.dir/message/header_message.cpp.o -c /home/zah/RPM/metaverse/src/lib/bitcoin/message/header_message.cpp
/usr/bin/ld.default: ../../../lib/libethash.a(internal.c.o): relocation R_X86_64_32S against .rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld.default: ../../../lib/libethash.a(io_posix.c.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld.default: ../../../lib/libethash.a(sha3.c.o): relocation R_X86_64_32S against .rodata' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld.default: ../../../lib/libethash.a(io.c.o): relocation R_X86_64_32 against .rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld.default: final link failed: nonrepresentable section on output
collect2: error: ld returned 1 exit status
make[2]: *** [src/lib/consensus/CMakeFiles/consensus_shared.dir/build.make:487: lib/libmvs_consensus.so] Error 1
make[2]: Leaving directory '/home/zah/RPM/metaverse/build'
make[1]: *** [CMakeFiles/Makefile2:945: src/lib/consensus/CMakeFiles/consensus_shared.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

@code1010111
Copy link
Author

do you mean my local build or all project?

@canguruhh
Copy link
Member

the project is not abandoned. just the utxo fullnode has not received new features lately. which version of gcc do you use @code1010111 ?

@code1010111
Copy link
Author

gcc -v 10.3.1

This project has the same functions as new-frontiers? @canguruhh

@canguruhh
Copy link
Member

new-frontiers is the virtual machine enabled chain. you can find the source here: https://github.com/mvs-org/new-frontiers

this project here is the metaverse utxo ledger which is based on libbitcoin. it is still important for the project as it contains our avatars, digital asset and hybrid consensus layer.

gcc 10 is too new i guess. @betachen merged a fix for gcc 10 some time ago but there might still be an issue with it. let me try it myself with a fresh setup

@betachen
Copy link
Member

what's the os type? ubuntu or something else. it looks a link error caused by system env.

@metaversedna
Copy link

what's the os type? ubuntu or something else. it looks a link error caused by system env.

How do the two chains of atp and dna work? Are they waiting for the new frontier to close before they can be put into operation?

@galiy
Copy link

galiy commented May 20, 2023

gcc -v

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) 

result

make -j4
/usr/bin/cmake -S/nodes/mvs-node/src/metaverse -B/nodes/mvs-node/src/metaverse/build --check-build-system CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start /nodes/mvs-node/src/metaverse/build/CMakeFiles /nodes/mvs-node/src/metaverse/build//CMakeFiles/progress.marks
make  -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make  -f contrib/mongoose/CMakeFiles/mongoose_static.dir/build.make contrib/mongoose/CMakeFiles/mongoose_static.dir/depend
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/contrib/mongoose /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/contrib/mongoose /nodes/mvs-node/src/metaverse/build/contrib/mongoose/CMakeFiles/mongoose_static.dir/DependInfo.cmake --color=
make  -f contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/build.make contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/depend
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/contrib/jsoncpp /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/contrib/jsoncpp /nodes/mvs-node/src/metaverse/build/contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/DependInfo.cmake --color=
make  -f contrib/cryptojs/CMakeFiles/cryptojs_static.dir/build.make contrib/cryptojs/CMakeFiles/cryptojs_static.dir/depend
make  -f contrib/sodium/CMakeFiles/sodium_static.dir/build.make contrib/sodium/CMakeFiles/sodium_static.dir/depend
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/contrib/sodium /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/contrib/sodium /nodes/mvs-node/src/metaverse/build/contrib/sodium/CMakeFiles/sodium_static.dir/DependInfo.cmake --color=
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/contrib/cryptojs /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/contrib/cryptojs /nodes/mvs-node/src/metaverse/build/contrib/cryptojs/CMakeFiles/cryptojs_static.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f contrib/mongoose/CMakeFiles/mongoose_static.dir/build.make contrib/mongoose/CMakeFiles/mongoose_static.dir/build
Consolidate compiler generated dependencies of target cryptojs_static
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'contrib/mongoose/CMakeFiles/mongoose_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/build.make contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/build
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'contrib/jsoncpp/CMakeFiles/jsoncpp_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
[  0%] Built target mongoose_static
make  -f include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/build.make include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/depend
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f contrib/sodium/CMakeFiles/sodium_static.dir/build.make contrib/sodium/CMakeFiles/sodium_static.dir/build
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/include/metaverse/consensus/libethash /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/include/metaverse/consensus/libethash /nodes/mvs-node/src/metaverse/build/include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/DependInfo.cmake --color=
[  0%] Built target jsoncpp_static
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'contrib/sodium/CMakeFiles/sodium_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/build.make src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/depend
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/src/lib/bitcoin/math/external /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin/math/external /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/build.make include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/build
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f contrib/cryptojs/CMakeFiles/cryptojs_static.dir/build.make contrib/cryptojs/CMakeFiles/cryptojs_static.dir/build
[  3%] Built target sodium_static
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'include/metaverse/consensus/libethash/CMakeFiles/ethash.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/network/CMakeFiles/network_static.dir/build.make src/lib/network/CMakeFiles/network_static.dir/depend
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
[  4%] Built target ethash
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/build.make src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/build
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'src/lib/bitcoin/math/external/CMakeFiles/bitcoinmath_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
[  4%] Building CXX object contrib/cryptojs/CMakeFiles/cryptojs_static.dir/cryptojs_impl.cpp.o
make  -f src/lib/consensus/CMakeFiles/consensus_static.dir/build.make src/lib/consensus/CMakeFiles/consensus_static.dir/depend
cd /nodes/mvs-node/src/metaverse/build/contrib/cryptojs && /usr/bin/c++  -I/nodes/mvs-node/src/metaverse/contrib -I/nodes/mvs-node/src/metaverse/include -I/nodes/mvs-node/src/metaverse/src/lib/consensus/clone -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -O3 -DNDEBUG -MD -MT contrib/cryptojs/CMakeFiles/cryptojs_static.dir/cryptojs_impl.cpp.o -MF CMakeFiles/cryptojs_static.dir/cryptojs_impl.cpp.o.d -o CMakeFiles/cryptojs_static.dir/cryptojs_impl.cpp.o -c /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.cpp
[  6%] Built target bitcoinmath_static
make  -f src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/build.make src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/depend
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/src/lib/consensus /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/src/lib/consensus /nodes/mvs-node/src/metaverse/build/src/lib/consensus/CMakeFiles/consensus_static.dir/DependInfo.cmake --color=
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/src/lib/network /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/src/lib/network /nodes/mvs-node/src/metaverse/build/src/lib/network/CMakeFiles/network_static.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/consensus/CMakeFiles/consensus_static.dir/build.make src/lib/consensus/CMakeFiles/consensus_static.dir/build
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/network/CMakeFiles/network_static.dir/build.make src/lib/network/CMakeFiles/network_static.dir/build
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'src/lib/consensus/CMakeFiles/consensus_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
[ 12%] Built target consensus_static
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
cd /nodes/mvs-node/src/metaverse/build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /nodes/mvs-node/src/metaverse /nodes/mvs-node/src/metaverse/src/lib/bitcoin /nodes/mvs-node/src/metaverse/build /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/DependInfo.cmake --color=
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
make[2]: Nothing to be done for 'src/lib/network/CMakeFiles/network_static.dir/build'.
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
Consolidate compiler generated dependencies of target bitcoin_static
[ 18%] Built target network_static
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make  -f src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/build.make src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/build
make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
[ 18%] Building CXX object src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/ek_private.cpp.o
[ 18%] Building CXX object src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary.cpp.o
[ 18%] Building CXX object src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary_symbol.cpp.o
cd /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin && /usr/bin/c++ -DBC_STATIC=1 -DBOOST_ALL_NO_LIB -I/nodes/mvs-node/src/metaverse/contrib -I/nodes/mvs-node/src/metaverse/include -I/nodes/mvs-node/src/metaverse/src/lib/consensus/clone -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -O3 -DNDEBUG -MD -MT src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary.cpp.o -MF CMakeFiles/bitcoin_static.dir/wallet/dictionary.cpp.o.d -o CMakeFiles/bitcoin_static.dir/wallet/dictionary.cpp.o -c /nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp
cd /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin && /usr/bin/c++ -DBC_STATIC=1 -DBOOST_ALL_NO_LIB -I/nodes/mvs-node/src/metaverse/contrib -I/nodes/mvs-node/src/metaverse/include -I/nodes/mvs-node/src/metaverse/src/lib/consensus/clone -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -O3 -DNDEBUG -MD -MT src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary_symbol.cpp.o -MF CMakeFiles/bitcoin_static.dir/wallet/dictionary_symbol.cpp.o.d -o CMakeFiles/bitcoin_static.dir/wallet/dictionary_symbol.cpp.o -c /nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary_symbol.cpp
cd /nodes/mvs-node/src/metaverse/build/src/lib/bitcoin && /usr/bin/c++ -DBC_STATIC=1 -DBOOST_ALL_NO_LIB -I/nodes/mvs-node/src/metaverse/contrib -I/nodes/mvs-node/src/metaverse/include -I/nodes/mvs-node/src/metaverse/src/lib/consensus/clone -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -O3 -DNDEBUG -MD -MT src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/ek_private.cpp.o -MF CMakeFiles/bitcoin_static.dir/wallet/ek_private.cpp.o.d -o CMakeFiles/bitcoin_static.dir/wallet/ek_private.cpp.o -c /nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/ek_private.cpp
In file included from /nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:21:
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:34:21: error: ‘size_t’ does not name a type
   34 | static BC_CONSTEXPR size_t dictionary_size = 2048;
      |                     ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:27:1: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
   26 | #include <metaverse/bitcoin/compat.hpp>
  +++ |+#include <cstddef>
   27 | 
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:42:33: error: ‘dictionary_size’ was not declared in this scope
   42 | typedef std::array<const char*, dictionary_size> dictionary;
      |                                 ^~~~~~~~~~~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:42:48: error: template argument 2 is invalid
   42 | typedef std::array<const char*, dictionary_size> dictionary;
      |                                                ^
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:65:34: error: ‘string’ in namespace ‘std’ does not name a type
   65 |     bool is_sensitive(const std::string& symbol);
      |                                  ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:27:1: note: ‘std::string’ is defined in header ‘<string>’; did you forget to ‘#include <string>’?
   26 | #include <metaverse/bitcoin/compat.hpp>
  +++ |+#include <string>
   27 | 
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:68:34: error: ‘string’ in namespace ‘std’ does not name a type
   68 |     bool is_forbidden(const std::string& symbol);
      |                                  ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:68:29: note: ‘std::string’ is defined in header ‘<string>’; did you forget to ‘#include <string>’?
   68 |     bool is_forbidden(const std::string& symbol);
      |                             ^~~
/nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:2079:1: error: too many braces around scalar initializer for type ‘const dictionary’ {aka ‘const int’}
 2079 | };
      | ^
/nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:4133:1: error: too many braces around scalar initializer for type ‘const dictionary’ {aka ‘const int’}
 4133 | };
      | ^
/nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:6187:1: error: too many braces around scalar initializer for type ‘const dictionary’ {aka ‘const int’}
 6187 | };
      | ^
/nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:8241:1: error: too many braces around scalar initializer for type ‘const dictionary’ {aka ‘const int’}
 8241 | };
      | ^
/nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary.cpp:10295:1: error: too many braces around scalar initializer for type ‘const dictionary’ {aka ‘const int’}
10295 | };
      | ^
make[2]: *** [src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/build.make:1815: src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /nodes/mvs-node/src/metaverse/src/lib/bitcoin/wallet/dictionary_symbol.cpp:21:
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:34:21: error: ‘size_t’ does not name a type
   34 | static BC_CONSTEXPR size_t dictionary_size = 2048;
      |                     ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:27:1: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
   26 | #include <metaverse/bitcoin/compat.hpp>
  +++ |+#include <cstddef>
   27 | 
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:42:33: error: ‘dictionary_size’ was not declared in this scope
   42 | typedef std::array<const char*, dictionary_size> dictionary;
      |                                 ^~~~~~~~~~~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:42:48: error: template argument 2 is invalid
   42 | typedef std::array<const char*, dictionary_size> dictionary;
      |                                                ^
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:65:34: error: ‘string’ in namespace ‘std’ does not name a type
   65 |     bool is_sensitive(const std::string& symbol);
      |                                  ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:27:1: note: ‘std::string’ is defined in header ‘<string>’; did you forget to ‘#include <string>’?
   26 | #include <metaverse/bitcoin/compat.hpp>
  +++ |+#include <string>
   27 | 
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:68:34: error: ‘string’ in namespace ‘std’ does not name a type
   68 |     bool is_forbidden(const std::string& symbol);
      |                                  ^~~~~~
/nodes/mvs-node/src/metaverse/include/metaverse/bitcoin/wallet/dictionary.hpp:68:29: note: ‘std::string’ is defined in header ‘<string>’; did you forget to ‘#include <string>’?
   68 |     bool is_forbidden(const std::string& symbol);
      |                             ^~~
make[2]: *** [src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/build.make:1829: src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/wallet/dictionary_symbol.cpp.o] Error 1
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make[1]: *** [CMakeFiles/Makefile2:585: src/lib/bitcoin/CMakeFiles/bitcoin_static.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
In file included from /usr/include/c++/11/vector:60,
                 from /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.h:28,
                 from /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.cpp:24:
In static member function ‘static _Tp* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(const _Tp*, const _Tp*, _Tp*) [with _Tp = unsigned char; bool _IsMove = true]’,
    inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:495:30,
    inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:522:42,
    inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:529:31,
    inlined from ‘_OI std::copy(_II, _II, _OI) [with _II = std::move_iterator<unsigned char*>; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:620:7,
    inlined from ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*]’ at /usr/include/c++/11/bits/stl_uninitialized.h:110:27,
    inlined from ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*]’ at /usr/include/c++/11/bits/stl_uninitialized.h:151:15,
    inlined from ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*; _Tp = unsigned char]’ at /usr/include/c++/11/bits/stl_uninitialized.h:333:37,
    inlined from ‘_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = unsigned char*; _ForwardIterator = unsigned char*; _Allocator = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_uninitialized.h:355:2,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_insert(std::vector<_Tp, _Alloc>::iterator, _ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = __gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char> >; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/vector.tcc:783:9,
    inlined from ‘void std::vector<_Tp, _Alloc>::_M_insert_dispatch(std::vector<_Tp, _Alloc>::iterator, _InputIterator, _InputIterator, std::__false_type) [with _InputIterator = __gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char> >; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_vector.h:1665:19,
    inlined from ‘std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<unsigned char*, std::vector<unsigned char> >; <template-parameter-2-2> = void; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_vector.h:1383:22,
    inlined from ‘cryptojs::data_chunk cryptojs::encrypt(const string&, const string&)’ at /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.cpp:131:9:
/usr/include/c++/11/bits/stl_algobase.h:431:30: error: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ reading 1 or more bytes from a region of size 0 [-Werror=stringop-overread]
  431 |             __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
      |             ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h:33,
                 from /usr/include/c++/11/bits/allocator.h:46,
                 from /usr/include/c++/11/vector:64,
                 from /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.h:28,
                 from /nodes/mvs-node/src/metaverse/contrib/cryptojs/cryptojs_impl.cpp:24:
/usr/include/c++/11/ext/new_allocator.h: In function ‘cryptojs::data_chunk cryptojs::encrypt(const string&, const string&)’:
/usr/include/c++/11/ext/new_allocator.h:127:48: note: at offset 8 into source object of size 8 allocated by ‘operator new’
  127 |         return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
      |                                  ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [contrib/cryptojs/CMakeFiles/cryptojs_static.dir/build.make:93: contrib/cryptojs/CMakeFiles/cryptojs_static.dir/cryptojs_impl.cpp.o] Error 1
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make[1]: *** [CMakeFiles/Makefile2:506: contrib/cryptojs/CMakeFiles/cryptojs_static.dir/all] Error 2
make[1]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make: *** [Makefile:149: all] Error 2

@betachen
Copy link
Member

betachen commented May 23, 2023

Hi @galiy,

It's highly recommend that building Metaverse core files(mvsd/mvs-cli) with ubuntu20.04.
Under ubuntu22.04, the default gcc version is 11.3.0 which is too new for metaverse code based C++14, GCC 11 has stricter syntax checking compared to GCC 10.

However, I had fixed these issues under GCC11, the diff as below:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index b8704169..93b0d3ce 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -45,7 +45,7 @@ ENDIF()
 IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
     SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -Wno-stringop-overflow")
     #libbitcoin has too many ignored-qualifiers, and TODOs
-    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 ${COMMON_ARGS} -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses")
+    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 ${COMMON_ARGS} -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -Wno-stringop-overread")
 
 ELSEIF("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
     SET(CMAKE_C_FLAGS "-std=c11 -Wno-stringop-overflow")
diff --git a/include/metaverse/bitcoin/compat.hpp b/include/metaverse/bitcoin/compat.hpp
index 6fd9228f..98772036 100644
--- a/include/metaverse/bitcoin/compat.hpp
+++ b/include/metaverse/bitcoin/compat.hpp
@@ -23,6 +23,7 @@
 
 #include <cstdint>
 #include <limits>
+#include <cstddef>
 
 // CTP_Nov2013 implements noexcept but unfortunately VC12 and CTP_Nov2013
 // both identify as _MSC_VER = 1800, otherwise we could include CTP_Nov2013.
diff --git a/include/metaverse/bitcoin/wallet/dictionary.hpp b/include/metaverse/bitcoin/wallet/dictionary.hpp
index 9be79078..a3c4ed29 100644
--- a/include/metaverse/bitcoin/wallet/dictionary.hpp
+++ b/include/metaverse/bitcoin/wallet/dictionary.hpp
@@ -23,6 +23,7 @@
 
 #include <array>
 #include <vector>
+#include <string>
 #include <metaverse/bitcoin/compat.hpp>
 
 namespace libbitcoin {

copy above content then save it as gcc11_patch.diff.
Apply this diff into the project under project root path with commandgit apply gcc11_patch.diff.

@naftalimurgor
Copy link

naftalimurgor commented May 23, 2023

Metaverse is a fork of Bitcoin core with slight modifications in the Proof of Work logic. I've built Bitcoin core with success on Ubuntu 20.4 by following these steps:

PS: The video serves to show how to build Bitcoin core on Linux, by offering a step-by-step guide based on this build guide on Ubuntu:

  1. Building Bitcoin core: https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md
  2. Video guide: https://www.youtube.com/watch?v=6tIshGsVb5c&t=795s

@galiy
Copy link

galiy commented May 27, 2023

copy above content then save it as gcc11_patch.diff. Apply this diff into the project under project root path with commandgit apply gcc11_patch.diff.

Hi!

Thanks, it's almost good! But there was one error. At the very end, when building.

make[2]: Entering directory '/nodes/mvs-node/src/metaverse/build'
[ 94%] Linking CXX executable ../../bin/mvsd
cd /nodes/mvs-node/src/metaverse/build/src/mvsd && /usr/bin/cmake -E cmake_link_script CMakeFiles/mvsd.dir/link.txt --verbose=1
/usr/bin/c++  -std=c++14 -fvisibility=hidden -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-type-limits -Wno-deprecated-declarations -Werror -pthread -fno-enforce-eh-specs -fnothrow-opt -Wno-reorder -Wno-ignored-qualifiers -Wno-unused-function -Wno-unused-but-set-variable -Wno-sign-compare -Wno-unused-but-set-parameter -Wno-implicit-fallthrough -Wno-parentheses -Wno-stringop-overread -Wno-range-loop-construct -O3 -DNDEBUG  -static-libstdc++ -rdynamic CMakeFiles/mvsd.dir/executor.cpp.o CMakeFiles/mvsd.dir/main.cpp.o CMakeFiles/mvsd.dir/mgbubble/HttpServ.cpp.o CMakeFiles/mvsd.dir/mgbubble/MgServer.cpp.o CMakeFiles/mvsd.dir/mgbubble/Mongoose.cpp.o CMakeFiles/mvsd.dir/mgbubble/WsPushServ.cpp.o CMakeFiles/mvsd.dir/mgbubble/exception/Error.cpp.o CMakeFiles/mvsd.dir/mgbubble/exception/Exception.cpp.o CMakeFiles/mvsd.dir/mgbubble/exception/Instances.cpp.o CMakeFiles/mvsd.dir/mgbubble/utility/Stream.cpp.o CMakeFiles/mvsd.dir/mgbubble/utility/Stream_buf.cpp.o CMakeFiles/mvsd.dir/server/address_key.cpp.o CMakeFiles/mvsd.dir/server/configuration.cpp.o CMakeFiles/mvsd.dir/server/interface/address.cpp.o CMakeFiles/mvsd.dir/server/interface/blockchain.cpp.o CMakeFiles/mvsd.dir/server/interface/protocol.cpp.o CMakeFiles/mvsd.dir/server/interface/transaction_pool.cpp.o CMakeFiles/mvsd.dir/server/messages/message.cpp.o CMakeFiles/mvsd.dir/server/messages/route.cpp.o CMakeFiles/mvsd.dir/server/parser.cpp.o CMakeFiles/mvsd.dir/server/server_node.cpp.o CMakeFiles/mvsd.dir/server/services/block_service.cpp.o CMakeFiles/mvsd.dir/server/services/heartbeat_service.cpp.o CMakeFiles/mvsd.dir/server/services/query_service.cpp.o CMakeFiles/mvsd.dir/server/services/transaction_service.cpp.o CMakeFiles/mvsd.dir/server/settings.cpp.o CMakeFiles/mvsd.dir/server/utility/authenticator.cpp.o CMakeFiles/mvsd.dir/server/utility/fetch_helpers.cpp.o CMakeFiles/mvsd.dir/server/workers/notification_worker.cpp.o CMakeFiles/mvsd.dir/server/workers/query_worker.cpp.o -o ../../bin/mvsd  /usr/lib/x86_64-linux-gnu/libboost_date_time.a /usr/lib/x86_64-linux-gnu/libboost_filesystem.a /usr/lib/x86_64-linux-gnu/libboost_system.a /usr/lib/x86_64-linux-gnu/libboost_program_options.a /usr/lib/x86_64-linux-gnu/libboost_regex.a /usr/lib/x86_64-linux-gnu/libboost_thread.a ../../lib/libmvs_network.a ../../lib/libmvs_database.a ../../lib/libmvs_consensus.a ../../lib/libmvs_blockchain.a ../../lib/libsodium.a ../../lib/libmvs_bitcoin.a ../../lib/libmongoose.a ../../lib/libmvs_node.a ../../lib/libmvs_protocol.a ../../lib/libmvs_client.a ../../lib/libmvs_explorer.a ../../lib/libcryptojs.a ../../lib/libmvs_network.a ../../lib/libmvs_blockchain.a ../../lib/libmvs_database.a ../../lib/libmvs_consensus.a ../../lib/libethash.a -lpthread -lm ../../lib/libmvs_client.a ../../lib/libmvs_protocol.a ../../lib/libmvs_bitcoin.a /usr/lib/x86_64-linux-gnu/libboost_date_time.a /usr/lib/x86_64-linux-gnu/libboost_filesystem.a /usr/lib/x86_64-linux-gnu/libboost_system.a /usr/lib/x86_64-linux-gnu/libboost_program_options.a /usr/lib/x86_64-linux-gnu/libboost_regex.a /usr/lib/x86_64-linux-gnu/libboost_thread.a /usr/lib/x86_64-linux-gnu/libboost_atomic.a ../../lib/libsodium.a /usr/local/lib/libsecp256k1.a ../../lib/libmvs_bitcoinmath.a /usr/local/lib/libzmq.a /usr/local/lib/libzmq.a ../../lib/libjsoncpp.a 
/usr/bin/ld: ../../lib/libmvs_explorer.a(getaccount.cpp.o): in function `libbitcoin::explorer::commands::getaccount::invoke(Json::Value&, libbitcoin::server::server_node&)':
getaccount.cpp:(.text+0x7db): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned int>(Json::Value&, unsigned int const&)'
/usr/bin/ld: getaccount.cpp:(.text+0x7fa): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned char>(Json::Value&, unsigned char const&)'
/usr/bin/ld: ../../lib/libmvs_explorer.a(getbalance.cpp.o): in function `libbitcoin::explorer::commands::getbalance::invoke(Json::Value&, libbitcoin::server::server_node&)':
getbalance.cpp:(.text+0x898): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: getbalance.cpp:(.text+0x8b4): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: getbalance.cpp:(.text+0x8d0): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: getbalance.cpp:(.text+0x8f9): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: getbalance.cpp:(.text+0x915): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: ../../lib/libmvs_explorer.a(getmininginfo.cpp.o):getmininginfo.cpp:(.text+0x4c8): more undefined references to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)' follow
/usr/bin/ld: ../../lib/libmvs_explorer.a(importaccount.cpp.o): in function `libbitcoin::explorer::commands::importaccount::invoke(Json::Value&, libbitcoin::server::server_node&)':
importaccount.cpp:(.text+0xe8f): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned int>(Json::Value&, unsigned int const&)'
/usr/bin/ld: ../../lib/libmvs_explorer.a(importkeyfile.cpp.o): in function `libbitcoin::explorer::commands::importkeyfile::invoke(Json::Value&, libbitcoin::server::server_node&)':
importkeyfile.cpp:(.text+0x12b9): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned int>(Json::Value&, unsigned int const&)'
/usr/bin/ld: importkeyfile.cpp:(.text+0x1301): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: ../../lib/libmvs_explorer.a(listbalances.cpp.o): in function `libbitcoin::explorer::commands::listbalances::invoke(Json::Value&, libbitcoin::server::server_node&)':
listbalances.cpp:(.text+0x830): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listbalances.cpp:(.text+0x84a): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listbalances.cpp:(.text+0x866): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listbalances.cpp:(.text+0x892): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: ../../lib/libmvs_explorer.a(listbalances.cpp.o):listbalances.cpp:(.text+0x8ae): more undefined references to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)' follow
/usr/bin/ld: ../../lib/libmvs_explorer.a(listtxs.cpp.o): in function `libbitcoin::explorer::commands::listtxs::invoke(Json::Value&, libbitcoin::server::server_node&)':
listtxs.cpp:(.text+0x2ff2): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned int>(Json::Value&, unsigned int const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x312f): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x314d): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x3274): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x329c): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x32ba): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned long>(Json::Value&, unsigned long const&)'
/usr/bin/ld: listtxs.cpp:(.text+0x3685): undefined reference to `Json::Value& libbitcoin::explorer::config::operator+=<unsigned char>(Json::Value&, unsigned char const&)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/mvsd/CMakeFiles/mvsd.dir/build.make:603: bin/mvsd] Error 1
make[2]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make[1]: *** [CMakeFiles/Makefile2:888: src/mvsd/CMakeFiles/mvsd.dir/all] Error 2
make[1]: Leaving directory '/nodes/mvs-node/src/metaverse/build'
make: *** [Makefile:149: all] Error 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants