Open KryptoBilko opened 4 years ago
Compiling the graftnode works like a charm, of course the synchronization stucks at block 299200 (direct after switching form v11 to v12), maybe you got a hint for me, i tried everything and build the blockchain 5 times with diffderent options, it stucks everytime at he same block.
Does it stuck only on Raspberry Pi? Just tried on Linux PC, block 299200 synced ok:
2019-12-24 19:18:46.936 7f08bae4e7c0 INFO global src/cryptonote_core/cryptonote_core.cpp:609 Loading checkpoints
2019-12-24 19:18:46.936 7f08bae4e7c0 INFO global src/daemon/core.h:92 Core initialized OK
2019-12-24 19:18:46.936 7f08bae4e7c0 INFO global src/daemon/rpc.h:78 Starting core rpc server with 4 threads...
2019-12-24 19:18:46.937 [SRV_MAIN] INFO global src/daemon/rpc.h:83 core RPC server started ok
2019-12-24 19:18:46.938 [SRV_MAIN] INFO global src/daemon/p2p.h:78 Starting p2p net loop...
2019-12-24 19:18:48.195 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:310 [167.86.101.148:18980 OUT] Sync data returned a new top block candidate: 299125 -> 509284 [Your node is 210159 blocks (291 days) behind]
SYNCHRONIZATION started
2019-12-24 19:18:51.479 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299145/509284 (58% 210139 blocks remaining)
2019-12-24 19:18:52.148 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299165/509284 (58% 210119 blocks remaining)
2019-12-24 19:18:53.140 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299185/509284 (58% 210099 blocks remaining)
2019-12-24 19:18:54.701 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299205/509284 (58% 210079 blocks remaining)
2019-12-24 19:18:55.999 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299225/509284 (58% 210059 blocks remaining)
2019-12-24 19:18:56.466 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299245/509284 (58% 210039 blocks remaining)
2019-12-24 19:18:57.109 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299265/509284 (58% 210019 blocks remaining)
2019-12-24 19:18:58.748 [P2P4] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299285/509284 (58% 209999 blocks remaining)
2019-12-24 19:19:02.064 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299305/509284 (58% 209979 blocks remaining)
2019-12-24 19:19:02.951 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299325/509284 (58% 209959 blocks remaining)
2019-12-24 19:19:03.703 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299345/509284 (58% 209939 blocks remaining)
2019-12-24 19:19:07.565 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299365/509284 (58% 209919 blocks remaining)
2019-12-24 19:19:10.116 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299385/509284 (58% 209899 blocks remaining)
2019-12-24 19:19:10.673 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299405/509284 (58% 209879 blocks remaining)
2019-12-24 19:19:13.752 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299425/509284 (58% 209859 blocks remaining)
2019-12-24 19:19:16.415 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299445/509284 (58% 209839 blocks remaining)
2019-12-24 19:19:19.132 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299465/509284 (58% 209819 blocks remaining)
2019-12-24 19:19:21.901 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299485/509284 (58% 209799 blocks remaining)
2019-12-24 19:19:24.097 [P2P2] INFO global src/cryptonote_protocol/cryptonote_protocol_handler.inl:1179 [167.86.101.148:18980 OUT] Synced 299505/509284 (58% 209779 blocks remaining)
(didn't tried to sync from 0, only popped my blockchain to some point prior block 299200)
The compiling of the supernode works until 98% then it failed... Some Ideas or changes for compiling the supernode on Raspbian armv7 ? I tried Crosscompiling without success.
Unfortunately I don't have RPi4 hardware, so I can only try cross-compiling when I have a time for this (don't have much time right now). If you have some howtos/tips on how to setup environment - please share.
Thanks for your response :-) I got another Node on Ubuntu 18.04 and it works well, the problem is only at Raspbian. I tried a raw import of an actual lmdb from my ubuntu node, the import works until block 299200, then i got a verification problem...
If i try the import without verification, it imports, of course the blockchain doesnt synchronize with the actual network and stucks at the last imported block. It seems there is a verification problem beginning at v12 (block 299200). (maybe some swap size problems ?) My raspbian graftnode is on actual version 1.9.2. I made some optimizations for compiling like increasing /tmp and swap, better cooling and overclocking to 1800 MHz.
When it all works, im going to create a step-by-step tutorial, for setting up a graft&supernode on a raspberry pi 4 including all tweaks. :-)
At this moment i try to compile the supernode on raspbian again with some new settings, i will post it here with detailed logs.
Do you got some ideas for compiling settings on raspbian ?
In near future i'll be only able to help to check your logs - in particular graftnoded's logs while it stuck with synchronizing around the block 299200 and build log. For runtime log:
./graft-blockchain-import --data-dir mainnet_data --pop-blocks N
(where N - is a number of blocks you want to pop from blockchain) so you have e.g. 299000 blocks in your blockchain before capturing the log
graftnoded
with extra --log-level 2
argFor build issue - please either pass me a build log or some howto describing how to setup cross-compile environment (toolchain, libraries, etc) so i could try to build myself. But only RPi is have is the RPi3
Thats my building log, it seems to be a problem with "undefined reference to `__atomic_load_8'" cmake version 3.13.4 libboost 1.6.7
Last try log:
[ 93%] Linking CXX executable ../../bin/graft-blockchain-export
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::mdb_txn_safe(bool)': /usr/include/c++/8/bits/atomic_base.h:514: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::wait_no_active_txns()': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::~mdb_txn_safe()': /usr/include/c++/8/bits/atomic_base.h:524: undefined reference to
atomic_fetch_sub_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::num_active_tx() const': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
__atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function cryptonote::get_hash_stats(unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&)': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function
cryptonote::get_transaction_hash(cryptonote::transaction const&, crypto::hash&, unsigned int*)':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to `atomic_fetch_add_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function
cryptonote::get_block_hash(cryptonote::block const&, crypto::hash&)':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function cryptonote::miner::merge_hr()': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
__atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to `atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to __atomic_store_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::background_worker_thread()':
/usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::worker_thread()':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function cryptonote::miner::get_speed() const': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
collect2: error: ld returned 1 exit status
make[5]: [src/blockchain_utilities/CMakeFiles/blockchain_export.dir/build.make:143: bin/graft-blockchain-export] Fehler 1
make[4]: [CMakeFiles/Makefile2:2169: src/blockchain_utilities/CMakeFiles/blockchain_export.dir/all] Fehler 2
make[4]: *** Es wird auf noch nicht beendete Prozesse gewartet....
[ 93%] Linking CXX executable ../../bin/graft-blockchain-import
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::mdb_txn_safe(bool)': /usr/include/c++/8/bits/atomic_base.h:514: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::wait_no_active_txns()': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::~mdb_txn_safe()': /usr/include/c++/8/bits/atomic_base.h:524: undefined reference to
__atomic_fetch_sub_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::num_active_tx() const': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function cryptonote::get_hash_stats(unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&)': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function
cryptonote::get_transaction_hash(cryptonote::transaction const&, crypto::hash&, unsigned int*)':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function cryptonote::get_block_hash(cryptonote::block const&, crypto::hash&)': /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::merge_hr()':
/usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to __atomic_store_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::background_worker_thread()':
/usr/include/c++/8/bits/atomic_base.h:396: undefined reference to `atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to __atomic_store_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function cryptonote::miner::worker_thread()': /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::get_speed() const':
/usr/include/c++/8/bits/atomic_base.h:396: undefined reference to `__atomic_load_8'
collect2: error: ld returned 1 exit status
make[5]: [src/blockchain_utilities/CMakeFiles/blockchain_import.dir/build.make:143: bin/graft-blockchain-import] Fehler 1
make[4]: [CMakeFiles/Makefile2:2218: src/blockchain_utilities/CMakeFiles/blockchain_import.dir/all] Fehler 2
make[3]: [Makefile:141: all] Fehler 2
make[2]: [CMakeFiles/cryptonode.dir/build.make:111: STAMP/cryptonode/cryptonode-build] Fehler 2
make[1]: [CMakeFiles/Makefile2:192: CMakeFiles/cryptonode.dir/all] Fehler 2
make: [Makefile:84: all] Fehler 2
Cmake Output:
==> The configuration is RelWithDebInfo. Debug info will be extracted into separate files.
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found Git: /usr/bin/git
-- Found Boost Version: 106700
-- Found Boost Version: 106700
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/graft/graft-ng/build
it seems to be a problem with "undefined reference to `__atomic_load_8'"
So you have this issue while building it as part of graft-ng
build but if you build GraftNetwork
separately it goes ok, right? if so, i would dump and compare make
command line invoked while building in both cases. Or, as quick-and-dirty fix, just add libatomic
library for arm target, e.g. like this:
set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -latomic")
Thanks for your help, it belongs only to graft-ng. I will try your fix now. :-)
I found something useful for crosscompiling here: http://jensd.be/800/linux/cross-compiling-for-arm-with-ubuntu-16-04-lts http://amgaera.github.io/blog/2014/04/10/cross-compiling-for-raspberry-pi-on-64-bit-linux/
Tried it with: endif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
set(CMAKE_C_FLAGS "-march=armv7") set(CMAKE_CXX_FLAGS "-march=armv7") set(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -latomic") project(graft_server)
option(OPT_BUILD_TESTS "Build tests." OFF)
Result:
[ 93%] Linking CXX executable ../../bin/graft-blockchain-import
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::mdb_txn_safe(bool)': /usr/include/c++/8/bits/atomic_base.h:514: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::wait_no_active_txns()': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::~mdb_txn_safe()': /usr/include/c++/8/bits/atomic_base.h:524: undefined reference to
atomic_fetch_sub_8'
/usr/bin/ld: ../blockchain_db/libblockchain_db.a(db_lmdb.cpp.o): in function cryptonote::mdb_txn_safe::num_active_tx() const': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
__atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function cryptonote::get_hash_stats(unsigned long long&, unsigned long long&, unsigned long long&, unsigned long long&)': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function
cryptonote::get_transaction_hash(cryptonote::transaction const&, crypto::hash&, unsigned int*)':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to `atomic_fetch_add_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(cryptonote_format_utils.cpp.o): in function
cryptonote::get_block_hash(cryptonote::block const&, crypto::hash&)':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:296: undefined reference to
atomic_fetch_add_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function cryptonote::miner::merge_hr()': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
__atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to `atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to __atomic_store_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::background_worker_thread()':
/usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:374: undefined reference to
__atomic_store_8'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to __atomic_load_8' /usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function
cryptonote::miner::worker_thread()':
/usr/include/c++/8/bits/atomic_base.h:296: undefined reference to __atomic_fetch_add_8' /usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
/usr/bin/ld: ../cryptonote_basic/libcryptonote_basic.a(miner.cpp.o): in function cryptonote::miner::get_speed() const': /usr/include/c++/8/bits/atomic_base.h:396: undefined reference to
atomic_load_8'
collect2: error: ld returned 1 exit status
make[5]: [src/blockchain_utilities/CMakeFiles/blockchain_import.dir/build.make:143: bin/graft-blockchain-import] Fehler 1
make[4]: [CMakeFiles/Makefile2:2218: src/blockchain_utilities/CMakeFiles/blockchain_import.dir/all] Fehler 2
make[3]: [Makefile:141: all] Fehler 2
make[2]: [CMakeFiles/cryptonode.dir/build.make:111: STAMP/cryptonode/cryptonode-build] Fehler 2
make[1]: [CMakeFiles/Makefile2:192: CMakeFiles/cryptonode.dir/all] Fehler 2
make: [Makefile:84: all] Fehler 2
Am i wrong with these settings ?
If youre successfull with crosscompiling, please add a compiled arm release ;-) I will help you with testing. Before that, i have to solve the graftnode synchronization problem.
I extracted from my actual SD-Card an raspbian environment including Toolchain for Crosscompiling: https://mega.nz/#!VNoj1ASD!s-wAiWOMpVViXIXtJ4mM5Ko2KjTHNseKP8g2FoHn8CM graft-ng is also there... :-) Please take a look at the CMakelist i made some changes, commented out:
correct it, before doing cmake ;-)
This is far better for compiling & testing: https://www.osboxes.org/raspbian/#raspbian-2019-04-vbox
Im trying to build the supernode on a Raspberry Pi 4, i made changes to the Cmakelist for compiling on Raspbian Armv7. The power of an actual Raspberry Pi 4 with 4 GB Ram (doing some optimizations like increasing /tmp to 2048mb and slight overclock) should be enough to compile and run a graftnode & supernode on this small device.
Compiling the graftnode works like a charm, of course the synchronization stucks at block 299200 (direct after switching form v11 to v12), maybe you got a hint for me, i tried everything and build the blockchain 5 times with diffderent options, it stucks everytime at he same block.
The compiling of the supernode works until 98% then it failed...
Some Ideas or changes for compiling the supernode on Raspbian armv7 ? I tried Crosscompiling without success.
Im still working on a out-of-the box solution for the new Raspberry Pi 4, including a working Graft & Supernode with an actual lmdb on Board, changes will be here in my new pi fork: https://github.com/KryptoBilko/pigraft
This will push the Graft Network, if everyone can easily setup a supernode at home :-)