Skip to content

Instantly share code, notes, and snippets.

@Sjors
Created January 5, 2018 10:26
Show Gist options
  • Save Sjors/37bf6a3af47be36baed169788b2316a3 to your computer and use it in GitHub Desktop.
Save Sjors/37bf6a3af47be36baed169788b2316a3 to your computer and use it in GitHub Desktop.
bitcoin: make on Ubuntu on Windows 10 in VM on iMac
sjors@DESKTOP-4DF40F7:/usr/src/bitcoin$ make
Making all in src
make[1]: Entering directory '/usr/src/bitcoin/src'
make[2]: Entering directory '/usr/src/bitcoin/src'
CXX crypto/libbitcoinconsensus_la-aes.lo
CXX crypto/libbitcoinconsensus_la-chacha20.lo
CXX crypto/libbitcoinconsensus_la-hmac_sha256.lo
CXX crypto/libbitcoinconsensus_la-hmac_sha512.lo
CXX crypto/libbitcoinconsensus_la-ripemd160.lo
CXX crypto/libbitcoinconsensus_la-sha1.lo
CXX crypto/libbitcoinconsensus_la-sha256.lo
CXX crypto/libbitcoinconsensus_la-sha512.lo
CXX crypto/libbitcoinconsensus_la-sha256_sse4.lo
CXX libbitcoinconsensus_la-arith_uint256.lo
CXX consensus/libbitcoinconsensus_la-merkle.lo
CXX libbitcoinconsensus_la-hash.lo
CXX primitives/libbitcoinconsensus_la-block.lo
CXX primitives/libbitcoinconsensus_la-transaction.lo
CXX libbitcoinconsensus_la-pubkey.lo
CXX script/libbitcoinconsensus_la-bitcoinconsensus.lo
CXX script/libbitcoinconsensus_la-interpreter.lo
CXX script/libbitcoinconsensus_la-script.lo
CXX script/libbitcoinconsensus_la-script_error.lo
CXX libbitcoinconsensus_la-uint256.lo
CXX libbitcoinconsensus_la-utilstrencodings.lo
make[3]: Entering directory '/usr/src/bitcoin/src/secp256k1'
gcc -I. -g -O2 -Wall -Wextra -Wno-unused-function -c src/gen_context.c -o gen_context.o
gcc gen_context.o -o gen_context
./gen_context
CC src/libsecp256k1_la-secp256k1.lo
CCLD libsecp256k1.la
libtool: warning: undefined symbols not allowed in x86_64-w64-mingw32 shared libraries; building static only
/usr/bin/x86_64-w64-mingw32-ar: `u' modifier ignored since `D' is the default (see `U')
make[3]: Leaving directory '/usr/src/bitcoin/src/secp256k1'
CXXLD libbitcoinconsensus.la
/usr/bin/x86_64-w64-mingw32-ar: `u' modifier ignored since `D' is the default (see `U')
CXX bitcoind-bitcoind.o
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:94:48: error: ‘recursive_mutex’ is not a member of ‘std’
class CCriticalSection : public AnnotatedMixin<std::recursive_mutex>
^~~
./sync.h:94:48: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/recursive_mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:18,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/recursive_mutex.hpp:24:11: note: ‘boost::recursive_mutex’
class recursive_mutex:
^~~~~~~~~~~~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:94:48: error: ‘recursive_mutex’ is not a member of ‘std’
class CCriticalSection : public AnnotatedMixin<std::recursive_mutex>
^~~
./sync.h:94:48: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/recursive_mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:18,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/recursive_mutex.hpp:24:11: note: ‘boost::recursive_mutex’
class recursive_mutex:
^~~~~~~~~~~~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:94:68: error: template argument 1 is invalid
class CCriticalSection : public AnnotatedMixin<std::recursive_mutex>
^
./sync.h:103:24: error: ‘mutex’ is not a member of ‘std’
typedef AnnotatedMixin<std::mutex> CWaitableCriticalSection;
^~~
./sync.h:103:24: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:103:24: error: ‘mutex’ is not a member of ‘std’
typedef AnnotatedMixin<std::mutex> CWaitableCriticalSection;
^~~
./sync.h:103:24: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:103:34: error: template argument 1 is invalid
typedef AnnotatedMixin<std::mutex> CWaitableCriticalSection;
^
./sync.h:106:14: error: ‘condition_variable’ in namespace ‘std’ does not name a type
typedef std::condition_variable CConditionVariable;
^~~~~~~~~~~~~~~~~~
./sync.h:109:26: error: ‘mutex’ is not a member of ‘std’
typedef std::unique_lock<std::mutex> WaitableLock;
^~~
./sync.h:109:26: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:109:26: error: ‘mutex’ is not a member of ‘std’
typedef std::unique_lock<std::mutex> WaitableLock;
^~~
./sync.h:109:26: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:109:36: error: template argument 1 is invalid
typedef std::unique_lock<std::mutex> WaitableLock;
^
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:197:10: error: ‘condition_variable’ in namespace ‘std’ does not name a type
std::condition_variable condition;
^~~~~~~~~~~~~~~~~~
./sync.h:198:10: error: ‘mutex’ in namespace ‘std’ does not name a type
std::mutex mutex;
^~~~~
./sync.h: In member function ‘void CSemaphore::wait()’:
./sync.h:206:26: error: ‘mutex’ is not a member of ‘std’
std::unique_lock<std::mutex> lock(mutex);
^~~
./sync.h:206:26: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:206:26: error: ‘mutex’ is not a member of ‘std’
std::unique_lock<std::mutex> lock(mutex);
^~~
./sync.h:206:26: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:206:36: error: template argument 1 is invalid
std::unique_lock<std::mutex> lock(mutex);
^
./sync.h:206:43: error: ‘mutex’ was not declared in this scope
std::unique_lock<std::mutex> lock(mutex);
^~~~~
./sync.h:206:43: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:207:9: error: ‘condition’ was not declared in this scope
condition.wait(lock, [&]() { return value >= 1; });
^~~~~~~~~
./sync.h: In member function ‘bool CSemaphore::try_wait()’:
./sync.h:213:25: error: ‘mutex’ is not a member of ‘std’
std::lock_guard<std::mutex> lock(mutex);
^~~
./sync.h:213:25: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:213:25: error: ‘mutex’ is not a member of ‘std’
std::lock_guard<std::mutex> lock(mutex);
^~~
./sync.h:213:25: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:213:35: error: template argument 1 is invalid
std::lock_guard<std::mutex> lock(mutex);
^
./sync.h:213:42: error: ‘mutex’ was not declared in this scope
std::lock_guard<std::mutex> lock(mutex);
^~~~~
./sync.h:213:42: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h: In member function ‘void CSemaphore::post()’:
./sync.h:223:29: error: ‘mutex’ is not a member of ‘std’
std::lock_guard<std::mutex> lock(mutex);
^~~
./sync.h:223:29: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:223:29: error: ‘mutex’ is not a member of ‘std’
std::lock_guard<std::mutex> lock(mutex);
^~~
./sync.h:223:29: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:223:39: error: template argument 1 is invalid
std::lock_guard<std::mutex> lock(mutex);
^
./sync.h:223:46: error: ‘mutex’ was not declared in this scope
std::lock_guard<std::mutex> lock(mutex);
^~~~~
./sync.h:223:46: note: suggested alternative:
In file included from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/mutex.hpp:14:0,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/detail/thread.hpp:17,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread_only.hpp:22,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/thread.hpp:12,
from /usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread.hpp:13,
from ./scheduler.h:14,
from bitcoind.cpp:17:
/usr/src/bitcoin/depends/x86_64-w64-mingw32/share/../include/boost/thread/win32/mutex.hpp:25:11: note: ‘boost::mutex’
class mutex:
^~~~~
In file included from ./scheduler.h:17:0,
from bitcoind.cpp:17:
./sync.h:226:9: error: ‘condition’ was not declared in this scope
condition.notify_one();
^~~~~~~~~
In file included from /usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/condition_variable:39:0,
from ./sync.h:11,
from ./scheduler.h:17,
from bitcoind.cpp:17:
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h: In instantiation of ‘void std::unique_lock<_Mutex>::lock() [with _Mutex = CCriticalSection]’:
./sync.h:128:23: required from here
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h:267:17: error: ‘std::unique_lock<CCriticalSection>::mutex_type {aka class CCriticalSection}’ has no member named ‘lock’
_M_device->lock();
~~~~~~~~~~~^~~~
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h: In instantiation of ‘bool std::unique_lock<_Mutex>::try_lock() [with _Mutex = CCriticalSection]’:
./sync.h:137:23: required from here
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h:281:27: error: ‘std::unique_lock<CCriticalSection>::mutex_type {aka class CCriticalSection}’ has no member named ‘try_lock’
_M_owns = _M_device->try_lock();
~~~~~~~~~~~^~~~~~~~
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h: In instantiation of ‘void std::unique_lock<_Mutex>::unlock() [with _Mutex = CCriticalSection]’:
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h:232:10: required from ‘std::unique_lock<_Mutex>::~unique_lock() [with _Mutex = CCriticalSection]’
./sync.h:144:183: required from here
/usr/lib/gcc/x86_64-w64-mingw32/6.2-win32/include/c++/bits/std_mutex.h:323:17: error: ‘std::unique_lock<CCriticalSection>::mutex_type {aka class CCriticalSection}’ has no member named ‘unlock’
_M_device->unlock();
~~~~~~~~~~~^~~~~~
Makefile:8148: recipe for target 'bitcoind-bitcoind.o' failed
make[2]: *** [bitcoind-bitcoind.o] Error 1
make[2]: Leaving directory '/usr/src/bitcoin/src'
Makefile:9400: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/usr/src/bitcoin/src'
Makefile:747: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment