Giter Site home page Giter Site logo

monero-project / monero Goto Github PK

View Code? Open in Web Editor NEW
8.6K 8.6K 3.0K 185.22 MB

Monero: the secure, private, untraceable cryptocurrency

Home Page: https://getmonero.org

License: Other

CMake 2.05% C++ 81.89% C 11.67% Shell 0.42% Python 2.96% Makefile 0.49% q 0.08% Dockerfile 0.01% Assembly 0.39% Ruby 0.01% Awk 0.02%
blockchain c-plus-plus cmake cryptocurrency cryptography cryptonote monero p2p privacy security

monero's People

Contributors

anonimal avatar fluffypony avatar gingeropolous avatar hyc avatar idunk5400 avatar j-berman avatar jaqueeee avatar jeffro256 avatar kenshi84 avatar luigi1111 avatar mathstuf avatar mbg033 avatar mikezackles avatar mj-xmr avatar moneromooo-monero avatar noodledoodlenoodledoodlenoodledoodlenoo avatar oranjuice avatar ph4r05 avatar radfish avatar rbrunner7 avatar schernykh avatar selsta avatar snipa22 avatar stoffu avatar tewinget avatar thecharlatan avatar tobtoht avatar vtnerd avatar warptangent avatar xiphon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

monero's Issues

debian build problem

Hi, I having build error.

debian sid

-- The C compiler identification is GNU 4.9.0
-- The CXX compiler identification is GNU 4.9.0
-- Boost version: 1.55.0

$ git log -1 |head -1
commit 94cc5a7

branch master

make[1]: Entering directory '/home/user/github/bitmonero'
mkdir -p build/release
cd build/release && cmake -D CMAKE_BUILD_TYPE=Release ../..
-- The C compiler identification is GNU 4.9.0
-- The CXX compiler identification is GNU 4.9.0
-- Check for working C compiler: /usr/lib/ccache/cc
-- Check for working C compiler: /usr/lib/ccache/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/lib/ccache/c++
-- Check for working CXX compiler: /usr/lib/ccache/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.55.0
-- Found the following Boost libraries:
-- system
-- filesystem
-- thread
-- date_time
-- chrono
-- regex
-- serialization
-- program_options
-- Found Git: /usr/bin/git
-- Found PythonInterp: /usr/bin/python (found version "2.7.6")
-- Looking for include file pthread.h
-- Looking for include file pthread.h - not found
-- Could NOT find Threads (missing: Threads_FOUND)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/github/bitmonero/build/release
cd build/release && make
make[2]: Entering directory '/home/user/github/bitmonero/build/release'
make[3]: Entering directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target version
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
fatal: No names found, cannot describe anything.
CMake Warning at src/version.cmake:3 (message):
Cannot determine current revision. Make sure that you are building either
from a Git working tree or from a source archive.

make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
[ 0%] Built target version
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target upnpc-static
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
[ 1%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/igd_desc_parse.c.o
[ 2%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/miniupnpc.c.o
[ 3%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minixml.c.o
[ 4%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minisoap.c.o
[ 5%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/miniwget.c.o
[ 6%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpc.c.o
[ 7%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpcommands.c.o
[ 8%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpreplyparse.c.o
[ 9%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnperrors.c.o
[ 10%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/connecthostport.c.o
[ 11%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/portlistingparse.c.o
[ 12%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/receivedata.c.o
[ 13%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minissdpc.c.o
Linking C static library libminiupnpc.a
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
[ 13%] Built target upnpc-static
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target common
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
[ 14%] Building CXX object src/CMakeFiles/common.dir/common/base58.cpp.o
[ 15%] Building CXX object src/CMakeFiles/common.dir/common/util.cpp.o
[ 16%] Building CXX object src/CMakeFiles/common.dir/common/command_line.cpp.o
Linking CXX static library libcommon.a
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
[ 16%] Built target common
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target cryptonote_core
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
[ 17%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/blockchain_storage.cpp.o
[ 18%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/checkpoints.cpp.o
[ 19%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_basic_impl.cpp.o
[ 20%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_format_utils.cpp.o
[ 21%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/difficulty.cpp.o
[ 22%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/tx_pool.cpp.o
[ 23%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/account.cpp.o
[ 24%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_core.cpp.o
[ 25%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/miner.cpp.o
Linking CXX static library libcryptonote_core.a
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
[ 25%] Built target cryptonote_core
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target crypto
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
[ 26%] Building C object src/CMakeFiles/crypto.dir/crypto/aesb.c.o
[ 27%] Building C object src/CMakeFiles/crypto.dir/crypto/blake256.c.o
[ 28%] Building C object src/CMakeFiles/crypto.dir/crypto/chacha8.c.o
[ 29%] Building C object src/CMakeFiles/crypto.dir/crypto/crypto-ops-data.c.o
[ 30%] Building C object src/CMakeFiles/crypto.dir/crypto/crypto-ops.c.o
[ 31%] Building C object src/CMakeFiles/crypto.dir/crypto/groestl.c.o
/home/user/github/bitmonero/src/crypto/groestl.c: In function ‘Init’:
/home/user/github/bitmonero/src/crypto/groestl.c:210:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(;i<(SIZE512/sizeof(uint32_t));i++)
^
[ 32%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-blake.c.o
[ 33%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-groestl.c.o
[ 34%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-jh.c.o
[ 35%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-skein.c.o
[ 36%] Building C object src/CMakeFiles/crypto.dir/crypto/hash.c.o
[ 37%] Building C object src/CMakeFiles/crypto.dir/crypto/jh.c.o
[ 38%] Building C object src/CMakeFiles/crypto.dir/crypto/keccak.c.o
[ 39%] Building C object src/CMakeFiles/crypto.dir/crypto/oaes_lib.c.o
[ 40%] Building C object src/CMakeFiles/crypto.dir/crypto/random.c.o
[ 41%] Building C object src/CMakeFiles/crypto.dir/crypto/skein.c.o
/home/user/github/bitmonero/src/crypto/skein.c:80:5: warning: "SKEIN_256_NIST_MAX_HASH_BITS" is not defined [-Wundef]
#if SKEIN_256_NIST_MAX_HASH_BITS
^
/home/user/github/bitmonero/src/crypto/skein.c:1944:5: warning: "SKEIN_256_NIST_MAX_HASH_BITS" is not defined [-Wundef]
#if SKEIN_256_NIST_MAX_HASH_BITS
^
/home/user/github/bitmonero/src/crypto/skein.c: In function ‘Skein_256_Final’:
/home/user/github/bitmonero/src/crypto/skein.c:1360:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing](%28u64b_t *%29ctx->b)[0]= Skein_Swap64((u64b_t) i); /* build the counter block /
^
/home/user/github/bitmonero/src/crypto/skein.c: In function ‘Skein_512_Final’:
/home/user/github/bitmonero/src/crypto/skein.c:1560:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing](%28u64b_t *%29ctx->b)[0]= Skein_Swap64((u64b_t) i); /
build the counter block /
^
/home/user/github/bitmonero/src/crypto/skein.c: In function ‘Skein1024_Final’:
/home/user/github/bitmonero/src/crypto/skein.c:1758:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing](%28u64b_t *%29ctx->b)[0]= Skein_Swap64((u64b_t) i); /
build the counter block /
^
[ 42%] Building C object src/CMakeFiles/crypto.dir/crypto/slow-hash.c.o
/home/user/github/bitmonero/src/crypto/slow-hash.c: In function ‘cn_slow_hash’:
/home/user/github/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
U64(a)[0] = U64(&state.k[0])[0] ^ U64(&state.k[32])[0];
^
/home/user/github/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:200:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
U64(a)[1] = U64(&state.k[0])[1] ^ U64(&state.k[32])[1];
^
/home/user/github/bitmonero/src/crypto/slow-hash.c:200:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
U64(b)[0] = U64(&state.k[16])[0] ^ U64(&state.k[48])[0];
^
/home/user/github/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:202:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
U64(b)[1] = U64(&state.k[16])[1] ^ U64(&state.k[48])[1];
^
/home/user/github/bitmonero/src/crypto/slow-hash.c:202:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/user/github/bitmonero/src/crypto/slow-hash.c:210:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
p = &long_state[state_index(a)];
^
/home/user/github/bitmonero/src/crypto/slow-hash.c:222:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
p = &long_state[state_index(a)];
^
[ 43%] Building C object src/CMakeFiles/crypto.dir/crypto/tree-hash.c.o
[ 44%] Building CXX object src/CMakeFiles/crypto.dir/crypto/crypto.cpp.o
[ 45%] Building CXX object src/CMakeFiles/crypto.dir/crypto/electrum-words.cpp.o
Linking CXX static library libcrypto.a
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
[ 45%] Built target crypto
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
Scanning dependencies of target connectivity_tool
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
make[4]: Entering directory '/home/user/github/bitmonero/build/release'
[ 46%] Building CXX object src/CMakeFiles/connectivity_tool.dir/connectivity_tool/conn_tool.cpp.o
Linking CXX executable connectivity_tool
/tmp/cccRSnOo.ltrans21.ltrans.o: In function generate_signature': /home/user/github/bitmonero/src/crypto/crypto.h:142: undefined reference tocrypto::crypto_ops::generate_signature(crypto::hash const&, crypto::public_key const&, crypto::secret_key const&, crypto::signature&)'
/home/user/github/bitmonero/src/crypto/crypto.h:142: undefined reference to crypto::crypto_ops::generate_signature(crypto::hash const&, crypto::public_key const&, crypto::secret_key const&, crypto::signature&)' /tmp/cccRSnOo.ltrans27.ltrans.o: In functioncn_fast_hash':
/home/user/github/bitmonero/src/crypto/hash.h:36: undefined reference to cn_fast_hash' /tmp/cccRSnOo.ltrans29.ltrans.o: In functiongenerate_keys':
/home/user/github/bitmonero/src/crypto/crypto.h:106: undefined reference to crypto::crypto_ops::generate_keys(crypto::public_key&, crypto::secret_key&, crypto::secret_key const&, bool)' /tmp/cccRSnOo.ltrans29.ltrans.o: In functionmain':
/home/user/github/bitmonero/src/connectivity_tool/conn_tool.cpp:297: undefined reference to command_line::arg_help' /tmp/cccRSnOo.ltrans29.ltrans.o: In functionoperator()':
/home/user/github/bitmonero/src/connectivity_tool/conn_tool.cpp:319: undefined reference to `command_line::arg_help'
collect2: error: ld returned 1 exit status
src/CMakeFiles/connectivity_tool.dir/build.make:100: recipe for target 'src/connectivity_tool' failed
make[4]: *
* [src/connectivity_tool] Error 1
make[4]: Leaving directory '/home/user/github/bitmonero/build/release'
CMakeFiles/Makefile2:231: recipe for target 'src/CMakeFiles/connectivity_tool.dir/all' failed
make[3]: *** [src/CMakeFiles/connectivity_tool.dir/all] Error 2
make[3]: Leaving directory '/home/user/github/bitmonero/build/release'
Makefile:126: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/user/github/bitmonero/build/release'
Makefile:20: recipe for target 'build-release' failed
make[1]: *** [build-release] Error 2
make[1]: Leaving directory '/home/user/github/bitmonero'

Cann't build bitmonero [rev 26292c]

When I build bitmonero I get error:

[ 51%] Building CXX object src/CMakeFiles/wallet.dir/wallet/wallet2.cpp.o
cd /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999_build/src && /usr/bin/x86_64-pc-linux-gnu-g++  -DSTATICLIB  -DNDEBUG -O2 -march=native -pipe -msse -msse2 -msse3 -mssse3 -mmmx -mcx16 -msahf -momit-leaf-frame-pointer  -std=c++11 -D_GNU_SOURCE  -Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Werror -Wno-error=extra -Wno-error=deprecated-declarations -Wno-error=sign-compare -Wno-error=strict-aliasing -Wno-error=type-limits -Wno-unused-parameter -Wno-error=unused-variable -Wno-error=undef -Wno-error=uninitialized -Wlogical-op -Wno-error=maybe-uninitialized -Wno-reorder -Wno-missing-field-initializers -march=native -maes -I/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src -I/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/contrib/epee/include -I/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/external -I/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999_build/version    -o CMakeFiles/wallet.dir/wallet/wallet2.cpp.o -c /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp
In file included from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.h:24:0,
                 from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp:13:
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:123:12: error: looser throw specifier for ‘virtual tools::error::unexpected_txin_type::~unexpected_txin_type()’
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:115:12: error:   overriding ‘virtual tools::error::wallet_internal_error::~wallet_internal_error() noexcept (true)’
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:201:12: error: looser throw specifier for ‘virtual tools::error::acc_outs_lookup_error::~acc_outs_lookup_error()’
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:192:12: error:   overriding ‘virtual tools::error::refresh_error::~refresh_error() noexcept (true)’
In file included from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.h:24:0,
                 from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp:13:
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:395:12: error: looser throw specifier for ‘virtual tools::error::tx_rejected::~tx_rejected()’
In file included from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.h:24:0,
                 from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp:13:
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:266:12: error:   overriding ‘virtual tools::error::transfer_error::~transfer_error() noexcept (true)’
In file included from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.h:24:0,
                 from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp:13:
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:451:12: error: looser throw specifier for ‘virtual tools::error::tx_too_big::~tx_too_big()’
In file included from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.h:24:0,
                 from /mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet2.cpp:13:
/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999/src/wallet/wallet_errors.h:266:12: error:   overriding ‘virtual tools::error::transfer_error::~transfer_error() noexcept (true)’
make[2]: *** [src/CMakeFiles/wallet.dir/wallet/wallet2.cpp.o] Error 1
make[2]: Leaving directory `/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999_build'
make[1]: *** [src/CMakeFiles/wallet.dir/all] Error 2
make[1]: Leaving directory `/mnt/anythings/tmp/portage/net-p2p/monero-9999/work/monero-9999_build'
make: *** [all] Error 2

gcc-4.7.3
boost-1.53

Linux 32-bit builds no-worky

@dbit34 couldn't compile on an Ubuntu 12.04 32-bit VirtualBox, got this error:

[ 37%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/difficulty.cpp.o
/home/david/Monero/bitmonero/src/cryptonote_core/difficulty.cpp: In function ‘void cryptonote::mul(uint64_t, uint64_t, uint64_t&, uint64_t&)’:
/home/david/Monero/bitmonero/src/cryptonote_core/difficulty.cpp:59:22: error: expected unqualified-id before ‘__int128’
     typedef unsigned __int128 uint128_t;
                      ^
/home/david/Monero/bitmonero/src/cryptonote_core/difficulty.cpp:60:5: error: ‘uint128_t’ was not declared in this scope
     uint128_t res = (uint128_t) a * (uint128_t) b;
     ^
/home/david/Monero/bitmonero/src/cryptonote_core/difficulty.cpp:60:15: error: expected ‘;’ before ‘res’
     uint128_t res = (uint128_t) a * (uint128_t) b;
               ^
/home/david/Monero/bitmonero/src/cryptonote_core/difficulty.cpp:61:22: error: ‘res’ was not declared in this scope
     low = (uint64_t) res;
                      ^
make[3]: *** [src/CMakeFiles/cryptonote_core.dir/cryptonote_core/difficulty.cpp.o] Error 1
make[3]: Leaving directory `/home/david/Monero/bitmonero/build/release'
make[2]: *** [src/CMakeFiles/cryptonote_core.dir/all] Error 2
make[2]: Leaving directory `/home/david/Monero/bitmonero/build/release'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/david/Monero/bitmonero/build/release'
make: *** [build-release] Error 2

If we're supporting 32-bit Windows builds we should support 32-bit Linux builds. VERY low priority.

Showing outgoing transfers/payments

There doesn't seem to be any functionality to list outgoing transfers/payments from the wallet. There are so many use cases for this and really no reason to not have this feature.

Intelligent block propagation

Right now blocks are broadcast to all peers, regardless of whether they already have that block.

Peers should be sent a hash of the new block and should respond confirming whether or not they want to accept the block. Obviously if the block matching that hash has already been received from a connected peer, it does not need to be sent.

Clean up old branches

Remove old branches hanging around from thankful_for_today and stale branches from @decred. Branches that should remain are "development" and branches for each tagged release.

Transactions larger than 24.4 kb should be split

The wallet currently does not allow you to perform transfers when the generated tx is larger than 24.4 kb.

A saner behaviour would be this:
For all tx > 10 kb, attempt instead split the inputs and outputs into multiple tx of a size <10 kb specified by the user (default <5 kb).

Rounding error in wallet?

Error: not enough money to transfer, available only 0.100000000000, transaction amount 1.000000000000 = 0.999999000000 + 0.000001000000 (fee)

simplewallet refresh should include optional height param

Simplewallet currently refreshes from height 0. However, if you are making a new wallet and have not used that wallet address before, it seems unnecessary to sync from block 0 as there can not possibly be utxos belonging to you from blocks before the current height.

I would propose that refresh should have an optional height argument, eg
refresh [height]
where height allows you to indicate when you'd like to start looking for utxos (which must be higher than the last block which the wallet was synced to).

This should also be the default behaviour when generating a new wallet.

Raw blockchain + autodownload/autoload

Two things are needed:

  1. A CLI flag for the daemon that will allow a 'blockchain.raw' file to be created and used in parallel with the normal blockchain. This raw blockchain should just be a flat, serialised copy of every block in existence. If the daemon is started with this flag and this file does not exist, it should be created based on the existing blockchain (using the standard blockchain functions so that it still works when we move to an embedded db). It should be kept in-sync - when the blockchain is periodically written to disk, this file should be added to too.
  2. Once that is complete, a new function is that when the daemon is started for the first time in interactive mode (see: @mikezackles daemonize branch for when this won't happen) it should prompt to bootstrap the blockchain from downloads.monero.cc. The daemon can also be started with a --bootstrap-blockchain flag that will do this if no local blockchain is found. The daemon can also check for the existence of blockchain.raw in its working folder, which is an indicator to auto-import it. In all three cases, if the user wants to download the bootstrap, it should download it from a set URL (to be confirmed) over HTTP, with resume if the download stalls or the daemon crashes and is restarted with this option enabled / prompt shown and user answers yes, and download progress should be shown as it proceeds. VERY NB: as it downloads (OR as it is read off disk, if it exists locally) it should be read/downloaded in chunks that are deserialised, with each block being verified and added to the regular blockchain storage. It should not be read/downloaded into RAM whole and then worked with, as the regular blockchain already does that, so it will exhaust RAM on most boxes. In order to keep this consistent between sessions (eg. if the daemon is killed halfway through) a state file should temporarily be stored in the working folder that indicates the byte position and block height of the last chunk successfully imported. I think it should chunk -> import -> chunk -> import rather than trying to get clever and do it multi-threaded. We'll get clever later:)

BUg

electrum-words.h line 22 1
electrum-words.h line 23 1
electrum-words.h line 24 1

Build is not possible in Windows, Linux Work

simplewallet ctrl+d close failture

Commit 2d755b3 (merge from fluffypony) prevents a daemon crash relating to console input, however it creates a hang in simplewallet when attempting to ctrl+d to send eof. This is being actively investigated.

Move terminology away from "wallet"

It's been suggested that "wallet" is a poor description for laymen, and may hinder adoption. It's also arguably sexist - men have wallets, women have purses, and whilst "moneybag" is genderless it's probably the wrong term;) Whilst Monero is quite far from a point where this terminology becomes an issue, it's the sort of change that we can make sooner rather than later.

A suggested term is "account". Whilst there might be this knee-jerk reaction from advocates of cryptocurrency that feel the term implies centralisation, I find it advantageous for several reasons:

  1. It fits in with the whole "be your own bank" vibe, which is a good way to explain cryptocurrency in general to people
  2. The idea of separation of accounts is already familiar to people - a married couple may have a joint account, a company will have an account (or accounts), a savings account would be separate, etc.
  3. People are familiar and happy with paying a fee for moving funds between accounts, so it won't be weird for them
  4. It's the most familiar path for the general public. They understand creating an account, using a strong password, password recovery, etc. It's a natural transition for them.

Discuss.

[Features Requests/Proposals] Wallet2 improvements

I propose a discussion about what should be added/improved in Wallet2, in order to provide more information in rpcwallet, simplewallet or programs which on their top.

  • Adding blocks timestamp cache : The objective is to know the "human" date (epoch) of transactions (or other events) from their block height. As they only contains block height when saved to wallet2.
    Two solutions :
    -- Adding a map in Wallet2 containing the mapping "block_height -> timestamp". The map can easily be filled during refreshes processes as all required blocks are scanned. This involves an average of +30% size of Wallet2 data file.
    -- Another solution could come with database implementation, because blocks information should be easily accessible from Wallet2 and/or other classes.
  • Memorizing transaction spending time. As far I know, when we ask for incoming transfers, we can access the block time of the transaction (received), but for "sent/spendable" status, we only have a boolean (is the output spent or not). It could be interesting to have an additional parameter "spent_block_time". This can be achieved by adding a line in 'process_new_transaction'.
  • Memorizing transaction amounts/destinations : I'm doubtful about this, but it could be useful to save destinations somewhere when sending transactions. Like a "software" history (not contained in the blockchain). The main problem I consider is privacy and how to protect/backup this history. This feature could be a pain to implement properly (give the choice to users, backup it, etc) and may not be in the Privacy coin philosophy. Nevertheless this can be discussed.

Note : As I don't know boost::serialize behaviour (wallet2 data is stored this way), adding new data or modifying structures in Wallet2 could be harmful. Adding a "data structure version" flag (wallet2-specific version) could resolve this problem (if the version flag of local data file is lower than xxx, a full refresh is done and required structure are reinit correctly).

I haven't reviewed all internal data structures and information, so if I missed something, some of these proposals could be useless or almost existing.

(stopped here after remembering I was not in a Forum)

Testnet required

TODO: Add testnet params and a "--testnet" argument that allows one to operate their daemon/wallet/miner on the testnet instead of on the mainnet.

Store the deterministic wallet seed serialized in the '.keys' file

It would be great to have the opportunity of retrieving our (newly-generated) wallets' seeds, as it is one of the most convenient ways of making a backup.

My idea is to store the seeds permamently (encrypted in the '.keys' file), in order to let the users retrieve them anytime with an RPC command. The command should return an empty string (or a specific error) whether the wallet's '.keys' file doesn't contain a seed.

Problems with deterministic wallets on Windows (at least)

On Windows generating and restoring of deterministic wallets won't work. The mnemonic seed differs in console and log and restoring won't work with both. Also a wallet created on linux and is working to restore on Linux, won't restore on Linux. However, you can restore a Windows-wallet if you use the words from the log on Linux. Another thing to mention is, that in the console there are three words mssing, but both seeds have way more differences in words even after that.
Example: Log: sorrow tremble sharp plate bounce ring purpose such nothing pop outside capture neck wild thunder several endless describe valley bruise back surprise split abuse
Console: sorrow tremble sharp plate bounce ring purpose such nothing pop outside capture veral endless describe valley bruise back surprise split abuse

TL;DR: Wrapper Issue when generating on Windows and unknown issue when restoring a wallet

Restore deterministic wallet date issue

When restoring deterministic wallets the date should be set to beginning of June (when we added the functionality), and not the "creation" (restore) date.

simplewallet ctrl+c close failture

Commit 2d755b3 (merge from fluffypony) prevents a daemon crash relating to console input, however it creates a hang in simplewallet when attempting to ctrl+c to send sigterm. This is being actively investigated.

Simplewallet command names

In all of the command names, except "set_log", the words are seperated by a hyphen "-". It's trivial, but we should follow that paradigm.

Does not compile on arch

I'm experiencing the same issue as seen here:

bitmonero-project/bitmonero#8

make
mkdir -p build/release
cd build/release && cmake -D CMAKE_BUILD_TYPE=Release ../..
-- The C compiler identification is GNU 4.9.0
-- The CXX compiler identification is GNU 4.9.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
-- 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
-- Boost version: 1.55.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   chrono
--   regex
--   serialization
--   program_options
-- Found Git: /usr/bin/git
-- Found PythonInterp: /usr/bin/python (found version "3.4.1") 
-- Looking for include file pthread.h
-- Looking for include file pthread.h - not found
-- Could NOT find Threads (missing:  Threads_FOUND) 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/david/src/bitmonero/build/release
cd build/release && make
make[1]: Entering directory '/home/david/src/bitmonero/build/release'
make[2]: Entering directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target version
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
fatal: No names found, cannot describe anything.
CMake Warning at src/version.cmake:3 (message):
  Cannot determine current revision.  Make sure that you are building either
  from a Git working tree or from a source archive.


make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
[  0%] Built target version
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target upnpc-static
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
[  1%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/igd_desc_parse.c.o
[  2%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/miniupnpc.c.o
[  3%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minixml.c.o
[  4%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minisoap.c.o
[  5%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/miniwget.c.o
[  6%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpc.c.o
[  7%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpcommands.c.o
[  8%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnpreplyparse.c.o
[  9%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/upnperrors.c.o
[ 10%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/connecthostport.c.o
[ 11%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/portlistingparse.c.o
[ 12%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/receivedata.c.o
[ 13%] Building C object external/miniupnpc/CMakeFiles/upnpc-static.dir/minissdpc.c.o
Linking C static library libminiupnpc.a
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
[ 13%] Built target upnpc-static
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target common
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
[ 14%] Building CXX object src/CMakeFiles/common.dir/common/base58.cpp.o
[ 15%] Building CXX object src/CMakeFiles/common.dir/common/command_line.cpp.o
[ 16%] Building CXX object src/CMakeFiles/common.dir/common/util.cpp.o
Linking CXX static library libcommon.a
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
[ 16%] Built target common
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target cryptonote_core
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
[ 17%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/checkpoints.cpp.o
[ 18%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/blockchain_storage.cpp.o
[ 19%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/difficulty.cpp.o
[ 20%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_format_utils.cpp.o
[ 21%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/miner.cpp.o
[ 22%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/account.cpp.o
[ 23%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_core.cpp.o
[ 24%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/cryptonote_basic_impl.cpp.o
[ 25%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/tx_pool.cpp.o
Linking CXX static library libcryptonote_core.a
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
[ 25%] Built target cryptonote_core
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target crypto
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
[ 26%] Building C object src/CMakeFiles/crypto.dir/crypto/crypto-ops.c.o
[ 27%] Building C object src/CMakeFiles/crypto.dir/crypto/random.c.o
[ 28%] Building C object src/CMakeFiles/crypto.dir/crypto/slow-hash.c.o
/home/david/src/bitmonero/src/crypto/slow-hash.c: In function ‘cn_slow_hash’:
/home/david/src/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     U64(a)[0] = U64(&state.k[0])[0] ^ U64(&state.k[32])[0];
     ^
/home/david/src/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:199:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:200:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     U64(a)[1] = U64(&state.k[0])[1] ^ U64(&state.k[32])[1];
     ^
/home/david/src/bitmonero/src/crypto/slow-hash.c:200:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     U64(b)[0] = U64(&state.k[16])[0] ^ U64(&state.k[48])[0];
     ^
/home/david/src/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:201:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:202:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     U64(b)[1] = U64(&state.k[16])[1] ^ U64(&state.k[48])[1];
     ^
/home/david/src/bitmonero/src/crypto/slow-hash.c:202:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
/home/david/src/bitmonero/src/crypto/slow-hash.c:210:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         p = &long_state[state_index(a)];
         ^
/home/david/src/bitmonero/src/crypto/slow-hash.c:222:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         p = &long_state[state_index(a)];
         ^
[ 29%] Building C object src/CMakeFiles/crypto.dir/crypto/hash.c.o
[ 30%] Building C object src/CMakeFiles/crypto.dir/crypto/keccak.c.o
[ 31%] Building C object src/CMakeFiles/crypto.dir/crypto/aesb.c.o
[ 32%] Building C object src/CMakeFiles/crypto.dir/crypto/crypto-ops-data.c.o
[ 33%] Building CXX object src/CMakeFiles/crypto.dir/crypto/crypto.cpp.o
[ 34%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-jh.c.o
[ 35%] Building C object src/CMakeFiles/crypto.dir/crypto/tree-hash.c.o
[ 36%] Building C object src/CMakeFiles/crypto.dir/crypto/oaes_lib.c.o
[ 37%] Building C object src/CMakeFiles/crypto.dir/crypto/blake256.c.o
[ 38%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-groestl.c.o
[ 39%] Building C object src/CMakeFiles/crypto.dir/crypto/jh.c.o
[ 40%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-skein.c.o
[ 41%] Building C object src/CMakeFiles/crypto.dir/crypto/groestl.c.o
/home/david/src/bitmonero/src/crypto/groestl.c: In function ‘Init’:
/home/david/src/bitmonero/src/crypto/groestl.c:210:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(;i<(SIZE512/sizeof(uint32_t));i++)
         ^
[ 42%] Building C object src/CMakeFiles/crypto.dir/crypto/chacha8.c.o
[ 43%] Building C object src/CMakeFiles/crypto.dir/crypto/hash-extra-blake.c.o
[ 44%] Building C object src/CMakeFiles/crypto.dir/crypto/skein.c.o
/home/david/src/bitmonero/src/crypto/skein.c:80:5: warning: "SKEIN_256_NIST_MAX_HASH_BITS" is not defined [-Wundef]
 #if SKEIN_256_NIST_MAX_HASH_BITS
     ^
/home/david/src/bitmonero/src/crypto/skein.c: In function ‘Skein_256_Final’:
/home/david/src/bitmonero/src/crypto/skein.c:1360:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         ((u64b_t *)ctx->b)[0]= Skein_Swap64((u64b_t) i); /* build the counter block */
         ^
/home/david/src/bitmonero/src/crypto/skein.c: In function ‘Skein_512_Final’:
/home/david/src/bitmonero/src/crypto/skein.c:1560:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         ((u64b_t *)ctx->b)[0]= Skein_Swap64((u64b_t) i); /* build the counter block */
         ^
/home/david/src/bitmonero/src/crypto/skein.c: In function ‘Skein1024_Final’:
/home/david/src/bitmonero/src/crypto/skein.c:1758:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         ((u64b_t *)ctx->b)[0]= Skein_Swap64((u64b_t) i); /* build the counter block */
         ^
/home/david/src/bitmonero/src/crypto/skein.c: In function ‘Init’:
/home/david/src/bitmonero/src/crypto/skein.c:1944:5: warning: "SKEIN_256_NIST_MAX_HASH_BITS" is not defined [-Wundef]
 #if SKEIN_256_NIST_MAX_HASH_BITS
     ^
[ 45%] Building CXX object src/CMakeFiles/crypto.dir/crypto/electrum-words.cpp.o
Linking CXX static library libcrypto.a
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
[ 45%] Built target crypto
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
Scanning dependencies of target connectivity_tool
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
make[3]: Entering directory '/home/david/src/bitmonero/build/release'
[ 46%] Building CXX object src/CMakeFiles/connectivity_tool.dir/connectivity_tool/conn_tool.cpp.o
Linking CXX executable connectivity_tool
/tmp/cc1Hj3sj.ltrans18.ltrans.o: In function `handle_request_stat(boost::program_options::variables_map&, unsigned long)':
cc1Hj3sj.ltrans18.o:(.text+0xe7e): undefined reference to `crypto::crypto_ops::generate_signature(crypto::hash const&, crypto::public_key const&, crypto::secret_key const&, crypto::signature&)'
cc1Hj3sj.ltrans18.o:(.text+0x1273): undefined reference to `crypto::crypto_ops::generate_signature(crypto::hash const&, crypto::public_key const&, crypto::secret_key const&, crypto::signature&)'
/tmp/cc1Hj3sj.ltrans27.ltrans.o: In function `tools::get_proof_of_trust_hash(nodetool::proof_of_trust const&)':
cc1Hj3sj.ltrans27.o:(.text+0xcf4): undefined reference to `cn_fast_hash'
/tmp/cc1Hj3sj.ltrans29.ltrans.o: In function `generate_and_print_keys()':
cc1Hj3sj.ltrans29.o:(.text+0x49b): undefined reference to `crypto::crypto_ops::generate_keys(crypto::public_key&, crypto::secret_key&, crypto::secret_key const&, bool)'
/tmp/cc1Hj3sj.ltrans29.ltrans.o: In function `main':
cc1Hj3sj.ltrans29.o:(.text.startup+0x1ac): undefined reference to `command_line::arg_help'
cc1Hj3sj.ltrans29.o:(.text.startup+0x6ef): undefined reference to `command_line::arg_help'
collect2: error: ld returned 1 exit status
src/CMakeFiles/connectivity_tool.dir/build.make:96: recipe for target 'src/connectivity_tool' failed
make[3]: *** [src/connectivity_tool] Error 1
make[3]: Leaving directory '/home/david/src/bitmonero/build/release'
CMakeFiles/Makefile2:228: recipe for target 'src/CMakeFiles/connectivity_tool.dir/all' failed
make[2]: *** [src/CMakeFiles/connectivity_tool.dir/all] Error 2
make[2]: Leaving directory '/home/david/src/bitmonero/build/release'
Makefile:127: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/david/src/bitmonero/build/release'
Makefile:20: recipe for target 'build-release' failed
make: *** [build-release] Error 2

Rpcwallet doesn't wait (enough?) for the daemon RPC's initialization

2014-Aug-21 09:58:20.960909 ERROR C:\Users\user\Desktop\bitmonero-daemonize_wip\contrib\epee\include\net/http_client.h:867 failed to connect localhost:18081

It was definitely NOT 20 seconds of waiting before throwing the error above, and also, the daemon port becomes alive even before 20 seconds

Rpcwallet crashes without leaving a clue behind while the daemon is initializing

The new rpcwallet simply exits (without leaving an error message behind) whether opened straight after the daemon: The daemon starts loading the blockchain, and that results in the rpcwallet closing. Please let the wallet check for the daemon's RPC port to be active, thus, indicating that it has already loaded the chain.

Test cases are broken

Most of the testing suite was broken by the original fork to bitmonero.
Assistance is needed is restoring test functionality to 100%.

nodetool::peerlist_entry relies on time_t being a specific size.

As discussed on irc with fluffypony and rfreemanw, nodetool::peerlist_entry, defined in p2p_protocol_defs.h, uses time_t last_seen;.

On mingw-gcc 32-bit, time_t is 4 bytes while on msvc it's 8 bytes. This causes issues in other places, like in keyvalue_serialization_overloads.h. For example, in the template function unserialize_stl_container_pod_val_as_blob, CHECK_AND_ASSERT_MES expects loaded_size to be divisible by sizeof(value_type) with value_type = nodetool::peerlist_entry. This assert passes on msvc since peerlist_entry is 24 bytes but will fail on mingw because it's 4 bytes shorter than expected.

As answered here the type of time_t and by extension its size, is implementation defined.

Refresh from Height Issue

@jakoblind - not sure if you played with this much, but just tested it on a newly restored wallet that has 1 XMR in it, and it gets stuck in an infinite loop:)

We're currently on block 190558, and this tx is in 190551 -

[wallet ----]: refresh 190500
Height 190551, transaction <4084a075e06899d34e271bbf00c509143b448fd5ebf576f7d3a11a45a06bccc3>, received 1.000000000000
Height 190551, transaction <4084a075e06899d34e271bbf00c509143b448fd5ebf576f7d3a11a45a06bccc3>, received 1.000000000000

and so on until you ctrl-c:

Height 190551, transaction <4084a075e06899d34e271bbf00c509143b448fd5ebf576f7d3a11a45a06bccc3>, received 1.000000000000
Refresh done, blocks received: 13224
balance: 232.000000000000, unlocked balance: 0.000000000000

That balance is supposed to be 1:)

Bitmonerod send ERROR

[P2P0]ERROR /bitmonero/contrib/epee/include/net/abstract_tcp_server2.inl:307 send que size is more than ABSTRACT_SERVER_SEND_QUE_MAX_COUNT(100), shutting down connection
[P2P0]ERROR /bitmonero/contrib/epee/include/net/levin_protocol_handler_async.h:638 [174.3.102.122:18080 OUT]Failed to do_send()

How can fix this?

payment_id will be not accepted via RPC

I'm wondering abour an error with Simplewallet, payment_id and JSON_RPC.

I tried to use it with payment_id, but TX will be sent without it:

{"jsonrpc":"2.0","method":"transfer","params": {"destinations":[ {"amount": 500000000000, "address": "48MTY4jFEoJefp1upERPYx2LaLDZ4TCRUYFNErH5BTuHbe4b5NAvvKV9Zx9x9Ry5Y2fwxx9uzc5snifhiHu5Cx29LTCeaQi"} ], "payment_id":"eab654f4ce4e75bba34705fa0a92d4d04e728c5fa55b937288afdd84287f08e0","fee":5000000000,"mixin":0,"unlock_time":0}
 }

{u'jsonrpc': u'2.0', u'id': 0, u'result': {u'tx_hash': u'<f79b70c8fbc56598869d57fc3229d05f0b38057b46f68fc08e7864181bd55ba7>'}}

If I transfer direct in console, it works fine.

transfer 0 48MTY4jFEoJefp1upERPYx2LaLDZ4TCRUYFNErH5BTuHbe4b5NAvvKV9Zx9x9Ry5Y2fwxx9uzc5snifhiHu5Cx29LTCeaQi 0.5 eab654f4ce4e75bba34705fa0a92d4d04e728c5fa55b937288afdd84287f08e0

Money successfully sent, transaction <9a3c98f7701064fc04118c98fb7ff37587bc6ff54cdb5afb125ad4cd3e05b6bd>

We can check in block explorer that the second transaction has payment_id, the first one - not

Retrieving of viewkey

The viewkey is only displayed once the wallet is started, so we need an option to print it out via commandline.

It can be accesses the following way from simplewallet: m_account.get_keys().m_view_secret_key

Compile problem

very long text message, ends with words:
(.rodata._ZTVN5boost15program_options20invalid_option_valueE[_ZTVN5boost15program_options20invalid_option_valueE]+0x30): undefined reference toboost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const'
collect2: error: ld returned 1 exit status
make[3]: *** [src/connectivity_tool] error`

system Ubuntu 12.04

Mac build failed

Hi, after latest changes from @NoodleDoodleNoodleDoodleNoodleDoodleNoo I can't build monero on osx.

[ 37%] Building CXX object src/CMakeFiles/cryptonote_core.dir/cryptonote_core/checkpoints.cpp.o
[ 38%] Building C object src/CMakeFiles/crypto.dir/crypto/slow-hash.c.o
/tmp/bitmonero-OhJz/src/crypto/slow-hash.c:308:35: error: use of undeclared identifier 'MAP_ANONYMOUS'
                    MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB, 0, 0);
                                  ^
/tmp/bitmonero-OhJz/src/crypto/slow-hash.c:308:51: error: use of undeclared identifier 'MAP_HUGETLB'
                    MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB, 0, 0);
                                                  ^
2 errors generated.
make[3]: *** [src/CMakeFiles/crypto.dir/crypto/slow-hash.c.o] Error 1
make[2]: *** [src/CMakeFiles/crypto.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....

sammy007/homebrew-cryptonight#3

rpc save command causes wallet timeout

Currently the RPC save blockchain command communicates to the daemon and waits for a response; however, because blockchain storage at the daemon takes a long time, the wallet always timesout waiting for the RPC to respond and freezes the wallet.

Proper wallet behaviour for save blockchain functionality should prevent the wallet from timing out while it waits for the daemon to complete saving the blockchain.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.