B3-Coin / B3-CoinV2

B3-CoinV2
MIT License
46 stars 64 forks source link

Error building on OSX #35

Closed PlasmaLampe closed 5 years ago

PlasmaLampe commented 6 years ago

When I try to run the makefile for OSX I end up with the following error:

"boost::filesystem::path::stem() const", referenced from: boost::filesystem::basename(boost::filesystem::path const&) in init.o "vtable for boost::detail::thread_data_base", referenced from: boost::detail::thread_data_base::thread_data_base() in alert.o NOTE: a missing vtable usually means the first non-inline virtual member function has no definition. ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [b3coind] Error 1

OSX Version: 10.12.6 MacBook Pro - Mid 2010

Edit: This seems to be the root of the problem

ld: warning: ignoring file /opt/local/lib/libboost_system-mt.dylib, file was built for i386 which is not the architecture being linked (x86_64): /opt/local/lib/libboost_system-mt.dylib ld: warning: ignoring file /opt/local/lib/libboost_filesystem-mt.dylib, file was built for i386 which is not the architecture being linked (x86_64): /opt/local/lib/libboost_filesystem-mt.dylib ld: warning: ignoring file /opt/local/lib/libboost_program_options-mt.dylib, file was built for i386 which is not the architecture being linked (x86_64): /opt/local/lib/libboost_program_options-mt.dylib ld: warning: ignoring file /opt/local/lib/libboost_thread-mt.dylib, file was built for i386 which is not the architecture being linked (x86_64): /opt/local/lib/libboost_thread-mt.dylib Undefined symbols for architecture x86_64: "boost::filesystem::detail::remove_all(boost::filesystem::path const&, boost::system::error_code*)", referenced from: init_blockindex(leveldb::Options&, bool, bool) in txdb-leveldb.o "boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::detail::copy_option, boost::system::error_code*)", referenced from: BackupWallet(CWallet const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in walletdb.o "boost::program_options::detail::common_config_file_iterator::common_config_file_iterator(std::__1::set<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, bool)", referenced from:[...]

However, if I force make to build for the i386 architecture I end up with a linking error for that also. Does somebody have an idea? My next step will be to check if I can get a x86_64 version of boost up and running

SkyHyperV commented 6 years ago

Install 1.60 libboost and compile should be successful.