Skip to content
This repository has been archived by the owner on Oct 28, 2021. It is now read-only.

Mac OS X builds should ignore the Homebrew-installed CryptoPP #3493

Closed
pirapira opened this issue Jan 11, 2017 · 12 comments
Closed

Mac OS X builds should ignore the Homebrew-installed CryptoPP #3493

pirapira opened this issue Jan 11, 2017 · 12 comments

Comments

@pirapira
Copy link
Member

Otherwise problems like #3492 (crash) and #3465 (hash mismatch) happen.

@chfast
Copy link
Member

chfast commented Jan 11, 2017

So it pulls headers from homebrew cryptopp?

@pirapira
Copy link
Member Author

pirapira commented Jan 11, 2017

@chfast Yes, it pulls headers from homebrew cryptopp.

After adding std::count << "CRYPTOPP_VERSION:" << CRYPTOPP_VERSION << std::endl; in eth/main.cpp,

$ brew install cryptopp
$ mkdir build-with-brew-cryptopp
$ cd build-with-brew-cryptopp
$ cmake .. && make
$ ./eth/eth
CRYPTOPP_VERSION:565
$ brew uninstall cryptopp
$ mkdir build-wo-brew-cryptopp
$ cd build-wo-brew-cryptopp
$ cmake .. && make
$ ./eth/eth
CRYPTOPP_VERSION:570

@chfast
Copy link
Member

chfast commented Jan 12, 2017

No need to check, version 565 means you are taking headers from homebrew (our local one is 566).

@chfast
Copy link
Member

chfast commented Jan 12, 2017

What you can do is:

  1. build eth/main.cpp in verbose mode: make VERBOSE=1.
  2. Copy the full compilation command: clang++ ...
  3. Run it again with -MD option. It should describe what headers are included and why.

Show me 2. and 3.

@pirapira
Copy link
Member Author

pirapira commented Jan 12, 2017

cd /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/eth && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++   -DDISABLE_BROKEN_UNIT_TESTS_UNTIL_WE_FIX_THEM -DETH_FATDB -DETH_HAVE_SECP256K1 -DETH_JSONRPC -DETH_MINIUPNPC -DETH_TRUE -DSHAREDLIB -I/Users/yh/cpp-eth-fresh/build-with-brew-cryptopp -I/Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/include -isystem /usr/local/include -I/Users/yh/cpp-eth-fresh/eth/.. -isystem /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/deps/cryptopp/include -isystem /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/deps/jsoncpp/include -isystem /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/deps/jsonrpc/include  -std=c++11 -fpermissive -O2 -g -DETH_RELEASE   -Wall -Wextra -Werror -Wno-unknown-pragmas -fPIC -fstack-protector -fstack-protector-strong -Wno-unused-function -Wno-dangling-else -o CMakeFiles/eth.dir/main.cpp.o -c /Users/yh/cpp-eth-fresh/eth/main.cpp

-isystem /usr/local/include appears before -isystem /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/deps/cryptopp/include

@pirapira
Copy link
Member Author

CMakeFiles/eth.dir/main.cpp.o: /Users/yh/cpp-eth-fresh/eth/main.cpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/thread \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__config \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iosfwd \
  /usr/include/wchar.h /usr/include/_types.h /usr/include/sys/_types.h \
  /usr/include/sys/cdefs.h /usr/include/sys/_symbol_aliasing.h \
  /usr/include/sys/_posix_availability.h /usr/include/machine/_types.h \
  /usr/include/i386/_types.h /usr/include/sys/_pthread/_pthread_types.h \
  /usr/include/Availability.h /usr/include/AvailabilityInternal.h \
  /usr/include/sys/_types/_null.h /usr/include/sys/_types/_size_t.h \
  /usr/include/sys/_types/_mbstate_t.h \
  /usr/include/sys/_types/_ct_rune_t.h /usr/include/sys/_types/_rune_t.h \
  /usr/include/sys/_types/_wchar_t.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/stdarg.h \
  /usr/include/stdio.h /usr/include/sys/_types/_va_list.h \
  /usr/include/sys/stdio.h /usr/include/sys/_types/_off_t.h \
  /usr/include/sys/_types/_ssize_t.h /usr/include/time.h \
  /usr/include/sys/_types/_clock_t.h /usr/include/sys/_types/_time_t.h \
  /usr/include/sys/_types/_timespec.h /usr/include/_wctype.h \
  /usr/include/sys/_types/_wint_t.h /usr/include/_types/_wctype_t.h \
  /usr/include/ctype.h /usr/include/runetype.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__functional_base \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstddef \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/stddef.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/__stddef_max_align_t.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/typeinfo \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/exception \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstdint \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/stdint.h \
  /usr/include/stdint.h /usr/include/sys/_types/_int8_t.h \
  /usr/include/sys/_types/_int16_t.h /usr/include/sys/_types/_int32_t.h \
  /usr/include/sys/_types/_int64_t.h /usr/include/_types/_uint8_t.h \
  /usr/include/_types/_uint16_t.h /usr/include/_types/_uint32_t.h \
  /usr/include/_types/_uint64_t.h /usr/include/sys/_types/_intptr_t.h \
  /usr/include/sys/_types/_uintptr_t.h /usr/include/_types/_intmax_t.h \
  /usr/include/_types/_uintmax_t.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/new \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__undef___deallocate \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/utility \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__tuple \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/limits \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__undef_min_max \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iterator \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/initializer_list \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__debug \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/tuple \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstring \
  /usr/include/string.h /usr/include/strings.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/atomic \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/system_error \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cerrno \
  /usr/include/errno.h /usr/include/sys/errno.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stdexcept \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/chrono \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ctime \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ratio \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/climits \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/limits.h \
  /usr/include/limits.h /usr/include/machine/limits.h \
  /usr/include/i386/limits.h /usr/include/i386/_limits.h \
  /usr/include/sys/syslimits.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__mutex_base \
  /usr/include/pthread.h /usr/include/pthread/pthread_impl.h \
  /usr/include/pthread/sched.h \
  /usr/include/sys/_pthread/_pthread_attr_t.h \
  /usr/include/sys/_pthread/_pthread_cond_t.h \
  /usr/include/sys/_pthread/_pthread_condattr_t.h \
  /usr/include/sys/_pthread/_pthread_key_t.h \
  /usr/include/sys/_pthread/_pthread_mutex_t.h \
  /usr/include/sys/_pthread/_pthread_mutexattr_t.h \
  /usr/include/sys/_pthread/_pthread_once_t.h \
  /usr/include/sys/_pthread/_pthread_rwlock_t.h \
  /usr/include/sys/_pthread/_pthread_rwlockattr_t.h \
  /usr/include/sys/_pthread/_pthread_t.h /usr/include/pthread/qos.h \
  /usr/include/sys/qos.h /usr/include/sys/_types/_mach_port_t.h \
  /usr/include/sys/_types/_sigset_t.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/fstream \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ostream \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/ios \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__locale \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstdio \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cwchar \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cwctype \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cctype \
  /usr/include/wctype.h /usr/include/_types/_wctrans_t.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/mutex \
  /usr/include/locale.h /usr/include/_locale.h /usr/include/xlocale.h \
  /usr/include/_xlocale.h /usr/include/xlocale/_ctype.h \
  /usr/include/xlocale/__wctype.h /usr/include/xlocale/_stdio.h \
  /usr/include/xlocale/_string.h /usr/include/xlocale/_time.h \
  /usr/include/xlocale/_wchar.h /usr/include/xlocale/_wctype.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/streambuf \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/locale \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cstdlib \
  /usr/include/stdlib.h /usr/include/sys/wait.h \
  /usr/include/sys/_types/_pid_t.h /usr/include/sys/_types/_id_t.h \
  /usr/include/sys/signal.h /usr/include/sys/appleapiopts.h \
  /usr/include/machine/signal.h /usr/include/i386/signal.h \
  /usr/include/machine/_mcontext.h /usr/include/i386/_mcontext.h \
  /usr/include/mach/i386/_structs.h \
  /usr/include/sys/_types/_sigaltstack.h \
  /usr/include/sys/_types/_ucontext.h /usr/include/sys/_types/_uid_t.h \
  /usr/include/sys/resource.h /usr/include/sys/_types/_timeval.h \
  /usr/include/machine/endian.h /usr/include/i386/endian.h \
  /usr/include/sys/_endian.h /usr/include/libkern/_OSByteOrder.h \
  /usr/include/libkern/i386/_OSByteOrder.h /usr/include/alloca.h \
  /usr/include/machine/types.h /usr/include/i386/types.h \
  /usr/include/sys/_types/_dev_t.h /usr/include/sys/_types/_mode_t.h \
  /usr/include/xlocale/_stdlib.h /usr/include/nl_types.h \
  /usr/include/sys/types.h /usr/include/sys/_types/_blkcnt_t.h \
  /usr/include/sys/_types/_blksize_t.h /usr/include/sys/_types/_gid_t.h \
  /usr/include/sys/_types/_in_addr_t.h \
  /usr/include/sys/_types/_in_port_t.h /usr/include/sys/_types/_ino_t.h \
  /usr/include/sys/_types/_ino64_t.h /usr/include/sys/_types/_key_t.h \
  /usr/include/sys/_types/_nlink_t.h \
  /usr/include/sys/_types/_useconds_t.h \
  /usr/include/sys/_types/_suseconds_t.h \
  /usr/include/sys/_types/_rsize_t.h /usr/include/sys/_types/_errno_t.h \
  /usr/include/sys/_types/_fd_def.h \
  /usr/include/sys/_types/_fd_setsize.h \
  /usr/include/sys/_types/_fd_set.h /usr/include/sys/_types/_fd_clr.h \
  /usr/include/sys/_types/_fd_zero.h /usr/include/sys/_types/_fd_isset.h \
  /usr/include/sys/_types/_fd_copy.h \
  /usr/include/sys/_types/_fsblkcnt_t.h \
  /usr/include/sys/_types/_fsfilcnt_t.h /usr/include/_types/_nl_item.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/bitset \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__bit_reference \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/istream \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iostream \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/clocale \
  /usr/include/signal.h /usr/local/include/boost/algorithm/string.hpp \
  /usr/local/include/boost/algorithm/string/std_containers_traits.hpp \
  /usr/local/include/boost/config.hpp \
  /usr/local/include/boost/config/user.hpp \
  /usr/local/include/boost/config/select_compiler_config.hpp \
  /usr/local/include/boost/config/compiler/clang.hpp \
  /usr/local/include/boost/config/select_stdlib_config.hpp \
  /usr/local/include/boost/config/stdlib/libcpp.hpp \
  /usr/local/include/boost/config/select_platform_config.hpp \
  /usr/local/include/boost/config/platform/macos.hpp \
  /usr/local/include/boost/config/posix_features.hpp \
  /usr/include/unistd.h /usr/include/sys/unistd.h \
  /usr/include/sys/_types/_posix_vdisable.h \
  /usr/include/sys/_types/_seek_set.h /usr/include/sys/select.h \
  /usr/include/sys/_select.h /usr/include/sys/_types/_uuid_t.h \
  /usr/include/gethostuuid.h /usr/local/include/boost/config/suffix.hpp \
  /usr/local/include/boost/algorithm/string/std/string_traits.hpp \
<snip only boost>
  /usr/local/include/boost/algorithm/string/std/list_traits.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/list \
  /usr/local/include/boost/algorithm/string/trim.hpp \
<snip only boost>
  /usr/local/include/boost/function/detail/prologue.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cassert \
  /usr/local/include/boost/config/no_tr1/functional.hpp \
<snip only boost>
  /usr/local/include/boost/algorithm/string/find_format.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/deque \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__split_buffer \
  /usr/local/include/boost/algorithm/string/detail/find_format.hpp \
<snip only boost>
  /usr/local/include/boost/config/abi_suffix.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/vector \
  /usr/local/include/boost/system/system_error.hpp \
<snip only boost>
  /usr/local/include/boost/detail/bitmask.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stack \
  /usr/local/include/boost/filesystem/convenience.hpp \
  /usr/local/include/boost/filesystem/string_file.hpp \
  /usr/local/include/boost/filesystem/fstream.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/FileSystem.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/CommonIO.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/map \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__tree \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/set \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/unordered_map \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__hash_table \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cmath \
  /usr/include/math.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/unordered_set \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/array \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/sstream \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Common.h \
  /usr/local/include/boost/multiprecision/cpp_int.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/iomanip \
  /usr/local/include/boost/multiprecision/number.hpp \
  /usr/local/include/boost/mpl/max.hpp \
  /usr/local/include/boost/mpl/min_max.hpp \
  /usr/local/include/boost/mpl/less.hpp \
  /usr/local/include/boost/mpl/aux_/comparison_op.hpp \
  /usr/local/include/boost/mpl/aux_/numeric_op.hpp \
  /usr/local/include/boost/mpl/numeric_cast.hpp \
  /usr/local/include/boost/mpl/tag.hpp \
  /usr/local/include/boost/mpl/aux_/has_tag.hpp \
  /usr/local/include/boost/mpl/aux_/numeric_cast_utils.hpp \
  /usr/local/include/boost/mpl/aux_/config/forwarding.hpp \
  /usr/local/include/boost/mpl/aux_/msvc_eti_base.hpp \
  /usr/local/include/boost/mpl/aux_/is_msvc_eti_arg.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/less.hpp \
  /usr/local/include/boost/mpl/plus.hpp \
  /usr/local/include/boost/mpl/aux_/arithmetic_op.hpp \
  /usr/local/include/boost/mpl/integral_c.hpp \
  /usr/local/include/boost/mpl/integral_c_fwd.hpp \
  /usr/local/include/boost/mpl/aux_/largest_int.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/plus.hpp \
  /usr/local/include/boost/mpl/find_if.hpp \
  /usr/local/include/boost/mpl/aux_/find_if_pred.hpp \
  /usr/local/include/boost/mpl/aux_/iter_apply.hpp \
  /usr/local/include/boost/mpl/deref.hpp \
  /usr/local/include/boost/mpl/aux_/msvc_type.hpp \
  /usr/local/include/boost/mpl/iter_fold_if.hpp \
  /usr/local/include/boost/mpl/begin_end.hpp \
  /usr/local/include/boost/mpl/begin_end_fwd.hpp \
  /usr/local/include/boost/mpl/aux_/begin_end_impl.hpp \
  /usr/local/include/boost/mpl/sequence_tag_fwd.hpp \
  /usr/local/include/boost/mpl/aux_/has_begin.hpp \
  /usr/local/include/boost/mpl/aux_/traits_lambda_spec.hpp \
  /usr/local/include/boost/mpl/sequence_tag.hpp \
  /usr/local/include/boost/mpl/pair.hpp \
  /usr/local/include/boost/mpl/aux_/iter_fold_if_impl.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_if_impl.hpp \
  /usr/local/include/boost/multiprecision/detail/generic_interconvert.hpp \
  /usr/local/include/boost/multiprecision/detail/default_ops.hpp \
  /usr/local/include/boost/math/policies/error_handling.hpp \
  /usr/local/include/boost/config/no_tr1/complex.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/complex \
  /usr/local/include/boost/config/no_tr1/cmath.hpp \
  /usr/local/include/boost/math/tools/config.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/cfloat \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/float.h \
  /usr/local/include/boost/math/tools/user.hpp \
  /usr/local/include/boost/math/policies/policy.hpp \
  /usr/local/include/boost/mpl/list.hpp \
  /usr/local/include/boost/mpl/limits/list.hpp \
  /usr/local/include/boost/mpl/list/list20.hpp \
  /usr/local/include/boost/mpl/list/list10.hpp \
  /usr/local/include/boost/mpl/list/list0.hpp \
  /usr/local/include/boost/mpl/long.hpp \
  /usr/local/include/boost/mpl/long_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/push_front.hpp \
  /usr/local/include/boost/mpl/push_front_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/item.hpp \
  /usr/local/include/boost/mpl/list/aux_/tag.hpp \
  /usr/local/include/boost/mpl/list/aux_/pop_front.hpp \
  /usr/local/include/boost/mpl/pop_front_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/push_back.hpp \
  /usr/local/include/boost/mpl/push_back_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/front.hpp \
  /usr/local/include/boost/mpl/front_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/clear.hpp \
  /usr/local/include/boost/mpl/clear_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/O1_size.hpp \
  /usr/local/include/boost/mpl/O1_size_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/size.hpp \
  /usr/local/include/boost/mpl/size_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/empty.hpp \
  /usr/local/include/boost/mpl/empty_fwd.hpp \
  /usr/local/include/boost/mpl/list/aux_/begin_end.hpp \
  /usr/local/include/boost/mpl/list/aux_/iterator.hpp \
  /usr/local/include/boost/mpl/iterator_tags.hpp \
  /usr/local/include/boost/mpl/aux_/lambda_spec.hpp \
  /usr/local/include/boost/mpl/list/aux_/include_preprocessed.hpp \
  /usr/local/include/boost/mpl/list/aux_/preprocessed/plain/list10.hpp \
  /usr/local/include/boost/mpl/list/aux_/preprocessed/plain/list20.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/list.hpp \
  /usr/local/include/boost/mpl/contains.hpp \
  /usr/local/include/boost/mpl/contains_fwd.hpp \
  /usr/local/include/boost/mpl/aux_/contains_impl.hpp \
  /usr/local/include/boost/mpl/find.hpp \
  /usr/local/include/boost/mpl/same_as.hpp \
  /usr/local/include/boost/mpl/remove_if.hpp \
  /usr/local/include/boost/mpl/fold.hpp \
  /usr/local/include/boost/mpl/O1_size.hpp \
  /usr/local/include/boost/mpl/aux_/O1_size_impl.hpp \
  /usr/local/include/boost/mpl/aux_/has_size.hpp \
  /usr/local/include/boost/mpl/aux_/fold_impl.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp \
  /usr/local/include/boost/mpl/reverse_fold.hpp \
  /usr/local/include/boost/mpl/aux_/reverse_fold_impl.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/reverse_fold_impl.hpp \
  /usr/local/include/boost/mpl/aux_/inserter_algorithm.hpp \
  /usr/local/include/boost/mpl/back_inserter.hpp \
  /usr/local/include/boost/mpl/push_back.hpp \
  /usr/local/include/boost/mpl/aux_/push_back_impl.hpp \
  /usr/local/include/boost/mpl/inserter.hpp \
  /usr/local/include/boost/mpl/front_inserter.hpp \
  /usr/local/include/boost/mpl/push_front.hpp \
  /usr/local/include/boost/mpl/aux_/push_front_impl.hpp \
  /usr/local/include/boost/mpl/clear.hpp \
  /usr/local/include/boost/mpl/aux_/clear_impl.hpp \
  /usr/local/include/boost/mpl/vector.hpp \
  /usr/local/include/boost/mpl/limits/vector.hpp \
  /usr/local/include/boost/mpl/vector/vector20.hpp \
  /usr/local/include/boost/mpl/vector/vector10.hpp \
  /usr/local/include/boost/mpl/vector/vector0.hpp \
  /usr/local/include/boost/mpl/vector/aux_/at.hpp \
  /usr/local/include/boost/mpl/at_fwd.hpp \
  /usr/local/include/boost/mpl/vector/aux_/tag.hpp \
  /usr/local/include/boost/mpl/aux_/config/typeof.hpp \
  /usr/local/include/boost/mpl/vector/aux_/front.hpp \
  /usr/local/include/boost/mpl/vector/aux_/push_front.hpp \
  /usr/local/include/boost/mpl/vector/aux_/item.hpp \
  /usr/local/include/boost/mpl/vector/aux_/pop_front.hpp \
  /usr/local/include/boost/mpl/vector/aux_/push_back.hpp \
  /usr/local/include/boost/mpl/vector/aux_/pop_back.hpp \
  /usr/local/include/boost/mpl/pop_back_fwd.hpp \
  /usr/local/include/boost/mpl/vector/aux_/back.hpp \
  /usr/local/include/boost/mpl/back_fwd.hpp \
  /usr/local/include/boost/mpl/vector/aux_/clear.hpp \
  /usr/local/include/boost/mpl/vector/aux_/vector0.hpp \
  /usr/local/include/boost/mpl/vector/aux_/iterator.hpp \
  /usr/local/include/boost/mpl/minus.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/minus.hpp \
  /usr/local/include/boost/mpl/advance_fwd.hpp \
  /usr/local/include/boost/mpl/distance_fwd.hpp \
  /usr/local/include/boost/mpl/prior.hpp \
  /usr/local/include/boost/mpl/vector/aux_/O1_size.hpp \
  /usr/local/include/boost/mpl/vector/aux_/size.hpp \
  /usr/local/include/boost/mpl/vector/aux_/empty.hpp \
  /usr/local/include/boost/mpl/vector/aux_/begin_end.hpp \
  /usr/local/include/boost/mpl/vector/aux_/include_preprocessed.hpp \
  /usr/local/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector10.hpp \
  /usr/local/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector20.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/vector.hpp \
  /usr/local/include/boost/mpl/at.hpp \
  /usr/local/include/boost/mpl/aux_/at_impl.hpp \
  /usr/local/include/boost/mpl/advance.hpp \
  /usr/local/include/boost/mpl/negate.hpp \
  /usr/local/include/boost/mpl/aux_/advance_forward.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/advance_forward.hpp \
  /usr/local/include/boost/mpl/aux_/advance_backward.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/advance_backward.hpp \
  /usr/local/include/boost/mpl/size.hpp \
  /usr/local/include/boost/mpl/aux_/size_impl.hpp \
  /usr/local/include/boost/mpl/distance.hpp \
  /usr/local/include/boost/mpl/iter_fold.hpp \
  /usr/local/include/boost/mpl/aux_/iter_fold_impl.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_impl.hpp \
  /usr/local/include/boost/mpl/iterator_range.hpp \
  /usr/local/include/boost/mpl/comparison.hpp \
  /usr/local/include/boost/mpl/equal_to.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/equal_to.hpp \
  /usr/local/include/boost/mpl/not_equal_to.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/not_equal_to.hpp \
  /usr/local/include/boost/mpl/greater.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/greater.hpp \
  /usr/local/include/boost/mpl/less_equal.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/less_equal.hpp \
  /usr/local/include/boost/mpl/greater_equal.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/greater_equal.hpp \
  /usr/local/include/boost/math/tools/precision.hpp \
  /usr/local/include/boost/multiprecision/detail/number_base.hpp \
  /usr/local/include/boost/lexical_cast.hpp \
  /usr/local/include/boost/lexical_cast/bad_lexical_cast.hpp \
  /usr/local/include/boost/lexical_cast/try_lexical_convert.hpp \
  /usr/local/include/boost/lexical_cast/detail/is_character.hpp \
  /usr/local/include/boost/lexical_cast/detail/converter_numeric.hpp \
  /usr/local/include/boost/type_traits/is_float.hpp \
  /usr/local/include/boost/numeric/conversion/cast.hpp \
  /usr/local/include/boost/type.hpp \
  /usr/local/include/boost/numeric/conversion/converter.hpp \
  /usr/local/include/boost/numeric/conversion/conversion_traits.hpp \
  /usr/local/include/boost/numeric/conversion/detail/conversion_traits.hpp \
  /usr/local/include/boost/numeric/conversion/detail/meta.hpp \
  /usr/local/include/boost/numeric/conversion/detail/int_float_mixture.hpp \
  /usr/local/include/boost/numeric/conversion/int_float_mixture_enum.hpp \
  /usr/local/include/boost/numeric/conversion/detail/sign_mixture.hpp \
  /usr/local/include/boost/numeric/conversion/sign_mixture_enum.hpp \
  /usr/local/include/boost/numeric/conversion/detail/udt_builtin_mixture.hpp \
  /usr/local/include/boost/numeric/conversion/udt_builtin_mixture_enum.hpp \
  /usr/local/include/boost/numeric/conversion/detail/is_subranged.hpp \
  /usr/local/include/boost/mpl/multiplies.hpp \
  /usr/local/include/boost/mpl/times.hpp \
  /usr/local/include/boost/mpl/aux_/preprocessed/gcc/times.hpp \
  /usr/local/include/boost/numeric/conversion/converter_policies.hpp \
  /usr/local/include/boost/numeric/conversion/detail/converter.hpp \
  /usr/local/include/boost/numeric/conversion/bounds.hpp \
  /usr/local/include/boost/numeric/conversion/detail/bounds.hpp \
  /usr/local/include/boost/numeric/conversion/numeric_cast_traits.hpp \
  /usr/local/include/boost/numeric/conversion/detail/numeric_cast_traits.hpp \
  /usr/local/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_common.hpp \
  /usr/local/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_long_long.hpp \
  /usr/local/include/boost/lexical_cast/detail/converter_lexical.hpp \
  /usr/local/include/boost/type_traits/has_left_shift.hpp \
  /usr/local/include/boost/type_traits/has_right_shift.hpp \
  /usr/local/include/boost/detail/lcast_precision.hpp \
  /usr/local/include/boost/lexical_cast/detail/widest_char.hpp \
  /usr/local/include/boost/array.hpp /usr/local/include/boost/swap.hpp \
  /usr/local/include/boost/core/swap.hpp \
  /usr/local/include/boost/container/container_fwd.hpp \
  /usr/local/include/boost/container/detail/std_fwd.hpp \
  /usr/local/include/boost/move/detail/std_ns_begin.hpp \
  /usr/local/include/boost/move/detail/std_ns_end.hpp \
  /usr/local/include/boost/lexical_cast/detail/converter_lexical_streams.hpp \
  /usr/local/include/boost/lexical_cast/detail/lcast_char_constants.hpp \
  /usr/local/include/boost/lexical_cast/detail/lcast_unsigned_converters.hpp \
  /usr/local/include/boost/lexical_cast/detail/inf_nan.hpp \
  /usr/local/include/boost/math/special_functions/sign.hpp \
  /usr/local/include/boost/math/special_functions/math_fwd.hpp \
  /usr/local/include/boost/math/special_functions/detail/round_fwd.hpp \
  /usr/local/include/boost/math/tools/promotion.hpp \
  /usr/local/include/boost/math/special_functions/detail/fp_traits.hpp \
  /usr/local/include/boost/detail/endian.hpp \
  /usr/local/include/boost/predef/detail/endian_compat.h \
  /usr/local/include/boost/math/special_functions/fpclassify.hpp \
  /usr/local/include/boost/math/tools/real_cast.hpp \
  /usr/local/include/boost/detail/basic_pointerbuf.hpp \
  /usr/local/include/boost/math/special_functions/next.hpp \
  /usr/local/include/boost/math/special_functions/trunc.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/xmmintrin.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/mmintrin.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/mm_malloc.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/emmintrin.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/f16cintrin.h \
  /usr/local/include/boost/mpl/front.hpp \
  /usr/local/include/boost/mpl/aux_/front_impl.hpp \
  /usr/local/include/boost/multiprecision/detail/functions/constants.hpp \
  /usr/local/include/boost/multiprecision/detail/functions/pow.hpp \
  /usr/local/include/boost/multiprecision/detail/functions/trig.hpp \
  /usr/local/include/boost/multiprecision/detail/no_et_ops.hpp \
  /usr/local/include/boost/multiprecision/detail/et_ops.hpp \
  /usr/local/include/boost/multiprecision/detail/min_max.hpp \
  /usr/local/include/boost/multiprecision/traits/is_backend.hpp \
  /usr/local/include/boost/multiprecision/detail/number_compare.hpp \
  /usr/local/include/boost/multiprecision/traits/is_restricted_conversion.hpp \
  /usr/local/include/boost/multiprecision/traits/explicit_conversion.hpp \
  /usr/local/include/boost/multiprecision/detail/ublas_interop.hpp \
  /usr/local/include/boost/multiprecision/detail/integer_ops.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/cpp_int_config.hpp \
  /usr/local/include/boost/multiprecision/rational_adaptor.hpp \
  /usr/local/include/boost/rational.hpp \
  /usr/local/include/boost/operators.hpp \
  /usr/local/include/boost/call_traits.hpp \
  /usr/local/include/boost/detail/call_traits.hpp \
  /usr/local/include/boost/integer/common_factor_rt.hpp \
  /usr/local/include/boost/multiprecision/traits/is_byte_container.hpp \
  /usr/local/include/boost/integer/static_min_max.hpp \
  /usr/local/include/boost/type_traits/common_type.hpp \
  /usr/local/include/boost/type_traits/detail/mp_defer.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/checked.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/value_pack.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/comparison.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/add.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/multiply.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/divide.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/bitwise.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/misc.hpp \
  /usr/local/include/boost/multiprecision/detail/bitscan.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/limits.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/literals.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/serialize.hpp \
  /usr/local/include/boost/multiprecision/cpp_int/import_export.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/vector_ref.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Base64.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/FixedHash.h \
  /usr/local/include/boost/random/random_device.hpp \
  /usr/local/include/boost/random/detail/auto_link.hpp \
  /usr/local/include/boost/random/uniform_int_distribution.hpp \
  /usr/local/include/boost/random/detail/config.hpp \
  /usr/local/include/boost/random/detail/operators.hpp \
  /usr/local/include/boost/random/detail/uniform_int_float.hpp \
  /usr/local/include/boost/random/detail/generator_bits.hpp \
  /usr/local/include/boost/random/detail/disable_warnings.hpp \
  /usr/local/include/boost/random/detail/enable_warnings.hpp \
  /usr/local/include/boost/random/detail/signed_unsigned_tools.hpp \
  /usr/local/include/boost/random/traits.hpp \
  /usr/local/include/boost/functional/hash.hpp \
  /usr/local/include/boost/functional/hash/hash.hpp \
  /usr/local/include/boost/functional/hash/detail/hash_float.hpp \
  /usr/local/include/boost/functional/hash/detail/float_functions.hpp \
  /usr/local/include/boost/functional/hash/detail/limits.hpp \
  /usr/local/include/boost/integer/static_log2.hpp \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/typeindex \
  /usr/local/include/boost/functional/hash/extensions.hpp \
  /usr/local/include/boost/detail/container_fwd.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/CommonData.h \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/EthashAux.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/condition_variable \
  /Users/yh/cpp-eth-fresh/eth/../libethash/ethash.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/stdbool.h \
  /Users/yh/cpp-eth-fresh/eth/../libethash/compiler.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Log.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Terminal.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Worker.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Guards.h \
  /usr/local/include/boost/thread.hpp \
<snip only boost>
  /usr/local/include/boost/date_time/compiler_config.hpp \
  /usr/local/include/boost/date_time/locale_config.hpp \
  /usr/include/sys/time.h /usr/include/sys/_types/_timeval64.h \
  /usr/local/include/boost/date_time/microsec_time_clock.hpp \
<snip only boost>
  /usr/local/include/boost/detail/atomic_redef_macros.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/EthashProofOfWork.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/BlockHeader.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/RLP.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Exceptions.h \
  /usr/local/include/boost/exception/info_tuple.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/SHA3.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/Common.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcrypto/Common.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/ChainOperationParams.h \
  /Users/yh/cpp-eth-fresh/eth/../libevmcore/EVMSchedule.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/Exceptions.h \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/Ethash.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/SealEngine.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/GenericFarm.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/GenericMiner.h \
  /Users/yh/cpp-eth-fresh/eth/../libevm/VM.h \
  /Users/yh/cpp-eth-fresh/eth/../libevmcore/Instruction.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/Assertions.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/debugbreak.h \
  /usr/include/sys/syscall.h \
  /Users/yh/cpp-eth-fresh/eth/../libevmcore/Exceptions.h \
  /Users/yh/cpp-eth-fresh/eth/../libevm/VMFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libevm/ExtVMFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libevm/VMFactory.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/KeyManager.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcrypto/SecretStore.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/ICAP.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/All.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Account.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/TrieDB.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/db.h \
  /usr/local/include/leveldb/db.h /usr/local/include/leveldb/iterator.h \
  /usr/local/include/leveldb/slice.h /usr/local/include/leveldb/status.h \
  /usr/local/include/leveldb/options.h \
  /usr/local/include/leveldb/write_batch.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/MemoryDB.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/TrieCommon.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Client.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/queue \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/ABI.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Common.h \
  /usr/local/include/boost/asio.hpp \
  /usr/local/include/boost/asio/async_result.hpp \
  /usr/local/include/boost/asio/detail/config.hpp \
  /usr/local/include/boost/asio/handler_type.hpp \
  /usr/local/include/boost/asio/detail/push_options.hpp \
  /usr/local/include/boost/asio/detail/pop_options.hpp \
  /usr/local/include/boost/asio/basic_datagram_socket.hpp \
  /usr/local/include/boost/asio/basic_socket.hpp \
  /usr/local/include/boost/asio/basic_io_object.hpp \
  /usr/local/include/boost/asio/io_service.hpp \
  /usr/local/include/boost/asio/detail/noncopyable.hpp \
  /usr/local/include/boost/asio/detail/wrapped_handler.hpp \
  /usr/local/include/boost/asio/detail/bind_handler.hpp \
  /usr/local/include/boost/asio/detail/handler_alloc_helpers.hpp \
  /usr/local/include/boost/asio/detail/addressof.hpp \
  /usr/local/include/boost/asio/handler_alloc_hook.hpp \
  /usr/local/include/boost/asio/impl/handler_alloc_hook.ipp \
  /usr/local/include/boost/asio/detail/call_stack.hpp \
  /usr/local/include/boost/asio/detail/tss_ptr.hpp \
  /usr/local/include/boost/asio/detail/posix_tss_ptr.hpp \
  /usr/local/include/boost/asio/detail/impl/posix_tss_ptr.ipp \
  /usr/local/include/boost/asio/detail/throw_error.hpp \
  /usr/local/include/boost/asio/detail/impl/throw_error.ipp \
  /usr/local/include/boost/asio/detail/throw_exception.hpp \
  /usr/local/include/boost/asio/error.hpp /usr/include/netdb.h \
  /usr/include/sys/_types/_socklen_t.h /usr/include/netinet/in.h \
  /usr/include/sys/socket.h /usr/include/machine/_param.h \
  /usr/include/i386/_param.h /usr/include/sys/_types/_sa_family_t.h \
  /usr/include/sys/_types/_iovec_t.h /usr/include/netinet6/in6.h \
  /usr/local/include/boost/asio/impl/error.ipp \
  /usr/local/include/boost/asio/detail/task_io_service_thread_info.hpp \
  /usr/local/include/boost/asio/detail/op_queue.hpp \
  /usr/local/include/boost/asio/detail/thread_info_base.hpp \
  /usr/local/include/boost/asio/detail/handler_cont_helpers.hpp \
  /usr/local/include/boost/asio/handler_continuation_hook.hpp \
  /usr/local/include/boost/asio/detail/handler_invoke_helpers.hpp \
  /usr/local/include/boost/asio/handler_invoke_hook.hpp \
  /usr/local/include/boost/asio/impl/io_service.hpp \
  /usr/local/include/boost/asio/detail/handler_type_requirements.hpp \
  /usr/local/include/boost/asio/detail/service_registry.hpp \
  /usr/local/include/boost/asio/detail/mutex.hpp \
  /usr/local/include/boost/asio/detail/posix_mutex.hpp \
  /usr/local/include/boost/asio/detail/scoped_lock.hpp \
  /usr/local/include/boost/asio/detail/impl/posix_mutex.ipp \
  /usr/local/include/boost/asio/detail/impl/service_registry.hpp \
  /usr/local/include/boost/asio/detail/impl/service_registry.ipp \
  /usr/local/include/boost/asio/detail/task_io_service.hpp \
  /usr/local/include/boost/asio/detail/atomic_count.hpp \
  /usr/local/include/boost/asio/detail/event.hpp \
  /usr/local/include/boost/asio/detail/posix_event.hpp \
  /usr/local/include/boost/asio/detail/assert.hpp \
  /usr/local/include/boost/asio/detail/impl/posix_event.ipp \
  /usr/local/include/boost/asio/detail/reactor_fwd.hpp \
  /usr/local/include/boost/asio/detail/task_io_service_operation.hpp \
  /usr/local/include/boost/asio/detail/handler_tracking.hpp \
  /usr/local/include/boost/asio/detail/impl/handler_tracking.ipp \
  /usr/local/include/boost/asio/detail/impl/task_io_service.hpp \
  /usr/local/include/boost/asio/detail/completion_handler.hpp \
  /usr/local/include/boost/asio/detail/fenced_block.hpp \
  /usr/local/include/boost/asio/detail/macos_fenced_block.hpp \
  /usr/include/libkern/OSAtomic.h \
  /usr/local/include/boost/asio/detail/operation.hpp \
  /usr/local/include/boost/asio/detail/impl/task_io_service.ipp \
  /usr/local/include/boost/asio/detail/limits.hpp \
  /usr/local/include/boost/asio/detail/reactor.hpp \
  /usr/local/include/boost/asio/detail/kqueue_reactor.hpp \
  /usr/include/sys/event.h /usr/include/sys/queue.h \
  /usr/local/include/boost/asio/detail/object_pool.hpp \
  /usr/local/include/boost/asio/detail/reactor_op.hpp \
  /usr/local/include/boost/asio/detail/select_interrupter.hpp \
  /usr/local/include/boost/asio/detail/pipe_select_interrupter.hpp \
  /usr/local/include/boost/asio/detail/impl/pipe_select_interrupter.ipp \
  /usr/include/fcntl.h /usr/include/sys/fcntl.h \
  /usr/include/sys/_types/_o_sync.h /usr/include/sys/_types/_o_dsync.h \
  /usr/include/sys/_types/_s_ifmt.h /usr/include/sys/_types/_filesec_t.h \
  /usr/include/sys/stat.h \
  /usr/local/include/boost/asio/detail/socket_types.hpp \
  /usr/include/sys/ioctl.h /usr/include/sys/ttycom.h \
  /usr/include/sys/ioccom.h /usr/include/sys/filio.h \
  /usr/include/sys/sockio.h /usr/include/sys/poll.h \
  /usr/include/sys/uio.h /usr/include/sys/un.h \
  /usr/include/netinet/tcp.h /usr/include/arpa/inet.h \
  /usr/include/net/if.h /usr/include/net/if_var.h \
  /usr/include/sys/_types/_timeval32.h \
  /usr/local/include/boost/asio/detail/timer_queue_base.hpp \
<snip only boost>
  /usr/local/include/boost/asio/impl/write_at.hpp \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/BlockChain.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/BlockDetails.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/TransactionReceipt.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Transaction.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/Transaction.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/BlockQueue.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/VerifiedBlock.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/ChainParams.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/State.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/OverlayDB.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/CodeSizeCache.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/GasPricer.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Block.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/CommonNet.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/ClientBase.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Interface.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/LogFilter.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/TransactionQueue.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Defaults.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Executive.h \
  /usr/local/include/json/json.h /usr/local/include/json/autolink.h \
  /usr/local/include/json/config.h /usr/local/include/json/version.h \
  /usr/local/include/json/value.h /usr/local/include/json/forwards.h \
  /usr/local/include/json/reader.h /usr/local/include/json/features.h \
  /usr/local/include/json/writer.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/ExtVM.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/EthereumHost.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/EthereumPeer.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Capability.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/HostCapability.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Peer.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Session.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/RLPXFrameCoder.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcrypto/ECDHE.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcrypto/AES.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcrypto/CryptoPP.h \
  /usr/local/include/cryptopp/sha.h /usr/local/include/cryptopp/config.h \
  /usr/local/include/cryptopp/iterhash.h \
  /usr/local/include/cryptopp/cryptlib.h \
  /usr/local/include/cryptopp/stdcpp.h \
  /usr/local/include/cryptopp/trap.h \
  /usr/local/include/cryptopp/secblock.h \
  /usr/local/include/cryptopp/misc.h \
  /usr/local/include/cryptopp/smartptr.h \
  /usr/local/include/cryptopp/simple.h \
  /usr/local/include/cryptopp/keccak.h \
  /usr/local/include/cryptopp/ripemd.h /usr/local/include/cryptopp/aes.h \
  /usr/local/include/cryptopp/rijndael.h \
  /usr/local/include/cryptopp/seckey.h \
  /usr/local/include/cryptopp/pwdbased.h \
  /usr/local/include/cryptopp/hrtimer.h \
  /usr/local/include/cryptopp/integer.h \
  /usr/local/include/cryptopp/hmac.h /usr/local/include/cryptopp/modes.h \
  /usr/local/include/cryptopp/strciphr.h \
  /usr/local/include/cryptopp/argnames.h \
  /usr/local/include/cryptopp/algparam.h \
  /usr/local/include/cryptopp/filters.h \
  /usr/local/include/cryptopp/queue.h \
  /usr/local/include/cryptopp/eccrypto.h \
  /usr/local/include/cryptopp/pubkey.h \
  /usr/local/include/cryptopp/algebra.h \
  /usr/local/include/cryptopp/modarith.h \
  /usr/local/include/cryptopp/eprecomp.h \
  /usr/local/include/cryptopp/fips140.h \
  /usr/local/include/cryptopp/asn.h \
  /usr/local/include/cryptopp/gfpcrypt.h \
  /usr/local/include/cryptopp/modexppc.h \
  /usr/local/include/cryptopp/dh.h /usr/local/include/cryptopp/mqv.h \
  /usr/local/include/cryptopp/hmqv.h /usr/local/include/cryptopp/fhmqv.h \
  /usr/local/include/cryptopp/ecp.h /usr/local/include/cryptopp/ec2n.h \
  /usr/local/include/cryptopp/gf2n.h /usr/local/include/cryptopp/files.h \
  /usr/local/include/cryptopp/osrng.h \
  /usr/local/include/cryptopp/randpool.h \
  /usr/local/include/cryptopp/rng.h /usr/local/include/cryptopp/oids.h \
  /usr/local/include/cryptopp/dsa.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/RLPXSocket.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/RLPXFrameWriter.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/RLPXPacket.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/RLPXFrameReader.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/Utility.h \
  /Users/yh/cpp-eth-fresh/eth/../libethereum/BlockChainSync.h \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/EthashClient.h \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/GenesisInfo.h \
  /Users/yh/cpp-eth-fresh/eth/../libwebthree/WebThree.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Host.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/NodeTable.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/UDP.h \
  /Users/yh/cpp-eth-fresh/eth/../libp2p/Network.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/WhisperHost.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/Common.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/WhisperPeer.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/Message.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/Interface.h \
  /Users/yh/cpp-eth-fresh/eth/../libwhisper/BloomFilter.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AccountHolder.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/CommonJS.h \
  /Users/yh/cpp-eth-fresh/eth/../libdevcore/CommonJS.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Eth.h \
  /usr/local/include/jsonrpccpp/server.h \
  /usr/local/include/jsonrpccpp/server/abstractserver.h \
  /usr/local/include/jsonrpccpp/common/procedure.h \
  /usr/local/include/jsonrpccpp/common/jsonparser.h \
  /usr/local/include/jsonrpccpp/common/specification.h \
  /usr/local/include/jsonrpccpp/server/abstractserverconnector.h \
  /usr/local/include/jsonrpccpp/server/iclientconnectionhandler.h \
  /usr/local/include/jsonrpccpp/server/iprocedureinvokationhandler.h \
  /usr/local/include/jsonrpccpp/server/requesthandlerfactory.h \
  /usr/local/include/jsonrpccpp/common/exception.h \
  /usr/local/include/jsonrpccpp/common/errors.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/SessionManager.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/EthFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/ModularServer.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/SafeHttpServer.h \
  /usr/local/include/jsonrpccpp/server/connectors/httpserver.h \
  /usr/local/include/microhttpd.h \
  /usr/local/include/jsonrpccpp/client/connectors/httpclient.h \
  /usr/local/include/jsonrpccpp/client/connectors/../iclientconnector.h \
  /usr/include/curl/curl.h /usr/include/curl/curlver.h \
  /usr/include/curl/curlbuild.h \
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/inttypes.h \
  /usr/include/inttypes.h /usr/include/xlocale/_inttypes.h \
  /usr/include/curl/curlrules.h /usr/include/curl/easy.h \
  /usr/include/curl/multi.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/IpcServer.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/UnixSocketServer.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/IpcServerBase.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/WinPipeServer.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/LevelDB.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/DBFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Whisper.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/WhisperFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Net.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/NetFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Web3.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Web3Face.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminNet.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminNetFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminEth.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminEthFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminUtils.h \
  /Users/yh/cpp-eth-fresh/eth/../libwebthree/SystemManager.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/AdminUtilsFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Personal.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/PersonalFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Debug.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/DebugFace.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/Test.h \
  /Users/yh/cpp-eth-fresh/eth/../libweb3jsonrpc/TestFace.h \
  /Users/yh/cpp-eth-fresh/eth/Farm.h \
  /usr/local/include/jsonrpccpp/client.h \
  /usr/local/include/jsonrpccpp/client/client.h \
  /usr/local/include/jsonrpccpp/client/connectors/../batchcall.h \
  /usr/local/include/jsonrpccpp/client/connectors/../batchresponse.h \
  /Users/yh/cpp-eth-fresh/eth/../ethminer/MinerAux.h \
  /Users/yh/cpp-eth-fresh/eth/../libethcore/BasicAuthority.h \
  /Users/yh/cpp-eth-fresh/eth/../libethashseal/EthashCPUMiner.h \
  /Users/yh/cpp-eth-fresh/eth/../ethminer/FarmClient.h \
  /Users/yh/cpp-eth-fresh/build-with-brew-cryptopp/include/cpp-ethereum/BuildInfo.h \
  /Users/yh/cpp-eth-fresh/eth/AccountManager.h

@noloader
Copy link

noloader commented Jan 13, 2017

@chfast, @pirapira,

Sorry to interject again.

The Cmake Xcode generator is broken. It does not copy libcryptopp.a from the intermediate directory to the output directory. In the intermediate directory, Cmake or Xcode names it libcryptopp-object.a. But it is not copied to the final directory, and it is not named libcryptopp.a.

I believe the same problem occurs with libcryptopp.so (Linux) and libcryptopp.dylib (OS X), but I did not analyze it.

It may explain why you are linking against the wrong version of the library.

Also see Cmake generated Xcode project does not produce library artifacts? on Stack Overflow. And see Issue 355 in the Crypto++ bug tracker.

@chfast
Copy link
Member

chfast commented Jan 25, 2017

I think the issue on MacOS is because of this CMake config: https://github.com/ethereum/cpp-ethereum/pull/3518/files#diff-2e108b1166cce4167a2464426d9f93ceL176 (should go away with this PR).

@pirapira
Copy link
Member Author

pirapira commented Jan 27, 2017

Even on cmake-static-install, when I add std::cout << "CRYPTOPP_VERSION:" << CRYPTOPP_VERSION << std::endl;, I'm seeing

$ eth/eth
CRYPTOPP_VERSION:565

@noloader
Copy link

noloader commented Jan 27, 2017

$ eth/eth
CRYPTOPP_VERSION:565

CRYPTOPP_VERSION is a macro in config.h, around line 65.

Its a bit misleading. You could be linking against a shared object version 5.5, but if library versions are mixed/matched, then you will get 5.6.5 from the header.

What do you suggest for stashing away the build number version? Do you want a function like int BuildVersion()? The earliest it will be present/available is Crypto++ 5.7.

@chfast
Copy link
Member

chfast commented Jan 27, 2017

The main issue is that our build configuration puts /usr/local/include as the first include path, and we include system-level cryptopp headers instead of local ones.

@pirapira
Copy link
Member Author

That directory is Homebrew's default installation target.

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

No branches or pull requests

4 participants