bitcoinops / taproot-workshop

Taproot & Schnorr Python Library & Documentation.
MIT License
375 stars 112 forks source link

no member named 'level' #165

Closed miketwenty1 closed 4 years ago

miketwenty1 commented 4 years ago

Not sure if this is related to #163 or not. At this step in the README.md

Build the Optech Taproot branch of bitcoind locally. See the build documentation (build-xxxx.md) in the Bitcoin Core repository docs directory for additional documentation on building bitcoind on Unix, macOS, or Windows.

Was following this https://github.com/bitcoin/bitcoin/blob/master/doc/build-osx.md got to the make

➜  bitcoin git:(a1d284e50) make
Making all in src
  CXX      wallet/libbitcoin_wallet_a-walletutil.o
wallet/walletutil.cpp:77:23: error: no member named 'level' in 'boost::filesystem::recursive_directory_iterator'
        } else if (it.level() == 0 && it->symlink_status().type() == fs::regular_file && IsBerkeleyBtree(it->path())) {
                   ~~ ^
1 error generated.
make[2]: *** [wallet/libbitcoin_wallet_a-walletutil.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

running into this issue in prep for the workshop.

elichai commented 4 years ago

this looks like a bug in MacOS building of bitcoin core. try to build master of https://github.com/bitcoin/bitcoin and if you still get it please open an issue there :)

bitschmidty commented 4 years ago

You’ll need to cherry pick two commits if you’re on macOS Catalina. See here:

https://gist.github.com/bitschmidty/882fd70beb3d6610d28cfe3fa57c7e0e#troubleshooting

miketwenty1 commented 4 years ago

Tried this, it didn't work for me. The second commit is failing

➜  bitcoin git:(2c63baa6d) git cherry-pick 0bb33b5348dbddd65b88a7f00449c965562355d3 a64e97dd476bda7c7981979d045b0d06d6f7ce47

fatal: bad object a64e97dd476bda7c7981979d045b0d06d6f7ce47

make command still resulting in same error.

bitschmidty commented 4 years ago

@miketwenty1 The commit is in the bitcoin/bitcoin repo so I think youll need to fetch that remote as well in order to apply that commit. Since you have the first one, it appears you just need to fetch to get the more recent commit.

https://github.com/bitcoin/bitcoin/commit/a64e97dd476bda7c7981979d045b0d06d6f7ce47