Closed antanst closed 10 years ago
This seems to solve the issue
:+1: I deleted that part and builds fine now. Not sure about the impact, the bitcoin ticket references another PR for that issue. See https://github.com/bitcoin/bitcoin/issues/2806 for full thread.
It seems that https://github.com/bitcoin/bitcoin/pull/3198 is not needed in Litecoin at all. We are testing https://github.com/bitcoin/bitcoin/pull/3162
Could you please test master-0.8 with #86 added. Does it build and work fine on Mavericks?
Will check and report back.
After failing myself, here a failed build on latest ports
installed and the fix implemented. The file is now compiling properly but it seems to fail, missing a x86_64 symbols:
/bin/sh ../share/genbuild.sh obj/build.h
llvm-g++ -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DMAC_OSX -DMSG_NOSIGNAL=0 -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -I/Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src/leveldb/include -I/Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src/leveldb/helpers -DHAVE_BUILD_INFO -I"/Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src" -I"/Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src"/obj -I"/opt/local/include" -I"/opt/local/include/db48" -o litecoind -L"/opt/local/lib" -L"/opt/local/lib/db48" leveldb/libleveldb.a obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/keystore.o obj/main.o obj/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/script.o obj/scrypt.o obj/sync.o obj/util.o obj/wallet.o obj/walletdb.o obj/hash.o obj/bloom.o obj/noui.o obj/leveldb.o obj/txdb.o -dead_strip -ldb_cxx-4.8 -lboost_system-mt -lboost_filesystem-mt -lboost_program_options-mt -lboost_thread-mt -lboost_chrono-mt -lssl -lcrypto -lz /Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src/leveldb/libleveldb.a /Users/sebgrewe/Workspace/private/litecoin-testnet/litecoin/src/leveldb/libmemenv.a
Undefined symbols for architecture x86_64:
"Db::verify(char const*, char const*, std::__1::basic_ostream<char, std::__1::char_traits<char> >*, unsigned int)", referenced from:
CDBEnv::Verify(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool (*)(CDBEnv&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)) in db.o
CDBEnv::Salvage(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, std::__1::vector<std::__1::pair<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > >, std::__1::allocator<std::__1::pair<std::__1::vector<unsigned char, std::__1::allocator<unsigned char> >, std::__1::vector<unsigned char, std::__1::allocator<unsigned char> > > > >&) in db.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [litecoind] Error 1
Running ports to match the described dependencies in the build-osx
:
---> Computing dependencies for boost
---> Cleaning boost
---> Computing dependencies for db48
---> Cleaning db48
---> Computing dependencies for openssl
---> Cleaning openssl
---> Cleaning miniupnpc
---> Scanning binaries for linking errors: 100.0%
---> No broken files found.
EDIT: Dumped db48
, installed db53
and changed makefile.osx
. Now it compiled just fine:
[sebgrewe:~/Workspace/private/litecoin-testnet] $ litecoin/src/litecoind -datadir=1 getinfo
{
"version" : 80501,
"protocolversion" : 70002,
"walletversion" : 60000,
"balance" : 1800.44000100,
"blocks" : 112643,
"timeoffset" : 0,
"connections" : 5,
"proxy" : "",
"difficulty" : 0.00094102,
"testnet" : true,
"keypoololdest" : 1383652751,
"keypoolsize" : 102,
"paytxfee" : 0.00000000,
"mininput" : 0.00010000,
"errors" : ""
}
EDIT2: Removed db53
again and re-installed db48
. The upgrade seems to have broken the db48
installation. It now works fine even with the 4.8 version installed!
I'd say the fix suffices, everything else is user intervention.
The patch was merged. Please continue to do test builds of master-0.8 and the latest rc branch and report back here.
llvm-g++ -stdlib=libstdc++ -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -g -DMAC_OSX -DMSG_NOSIGNAL=0 -DBOOST_SPIRIT_THREADSAFE -DUSE_UPNP=1 -DUSE_IPV6=1 -I/Users/twan/tao/litecoin/src/leveldb/include -I/Users/twan/tao/litecoin/src/leveldb/helpers -DHAVE_BUILD_INFO -I"/Users/twan/tao/litecoin/src" -I"/Users/twan/tao/litecoin/src/obj" -I"/usr/local/include" -I"/usr/local/opt/berkeley-db4/include" -I"/usr/local/opt/openssl/include" -o litecoind -L"/usr/local/lib" -L"/usr/local/opt/berkeley-db4/lib" -L"/usr/local/opt/openssl/lib" leveldb/libleveldb.a obj/alert.o obj/version.o obj/checkpoints.o obj/netbase.o obj/addrman.o obj/crypter.o obj/key.o obj/db.o obj/init.o obj/keystore.o obj/main.o obj/net.o obj/protocol.o obj/bitcoinrpc.o obj/rpcdump.o obj/rpcnet.o obj/rpcmining.o obj/rpcwallet.o obj/rpcblockchain.o obj/rpcrawtransaction.o obj/script.o obj/scrypt.o obj/sync.o obj/util.o obj/wallet.o obj/walletdb.o obj/hash.o obj/bloom.o obj/noui.o obj/leveldb.o obj/txdb.o -dead_strip -ldb_cxx-4.8 -lboost_system-mt -lboost_filesystem-mt -lboost_program_options-mt -lboost_thread-mt -lboost_chrono-mt -lssl -lcrypto -lz -lminiupnpc /Users/twan/tao/litecoin/src/leveldb/libleveldb.a /Users/twan/tao/litecoin/src/leveldb/libmemenv.a
Undefined symbols for architecture x86_64:
"boost::program_options::to_internal(std::string const&)", referenced from:
boost::program_options::detail::basic_config_file_iterator
Using clang and Homebrew, the "make -f makefile.osx" command fails with:
litecoin/src/serialize.h:911:10: error: class member cannot be redeclared
Full build log following