Title: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on September 30, 2011, 07:38:48 PM I've followed the instructions on this page:
http://www.staff.tugraz.at/michael.steurer/Bitcoin-CentOS5.5-V1.pdf But this is the output I get: Code: make -f makefile.centos bitcoind g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/util.o util.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/script.o script.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/db.o db.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/net.o net.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/irc.o irc.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/main.o main.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/rpc.o rpc.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o obj/no gui/init.o init.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -O3 -o cr yptopp/obj/sha.o cryptopp/sha.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -O3 -o cr yptopp/obj/cpu.o cryptopp/cpu.cpp g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -msse2 -O 3 -march=amdfam10 -o obj/sha256.o sha256.cpp g++ -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/bitman/Bitcoin/Deps/include" -o bitcoind obj/nogui/util.o obj/nogui/script.o obj/nogui/db.o obj/nogui/net.o obj/nogui/irc.o obj/nogui/main.o obj/nogui/rpc.o obj/nogui/init.o crypt opp/obj/sha.o cryptopp/obj/cpu.o obj/sha256.o -dead_strip -Wl,-Bstatic /home/bitman/Bitcoin/Deps/lib/libdb_cxx-5.1.a -mtl /home/bitman/Bit coin/Deps/lib/libboost_system.a -mtl /home/bitman/Bitcoin/Deps/lib/libboost_thread.a -mtl /home/bitman/Bitcoin/Deps/lib/libboost_filesyste m.a -mtl /home/bitman/Bitcoin/Deps/lib/libboost_program_options.a /home/bitman/Bitcoin/Deps/lib/libdb_cxx.a /home/bitman/Bitcoin/Deps/lib/ libssl.a /home/bitman/Bitcoin/Deps/lib/libcrypto.a -l ssl -l crypto -Wl,-Bdynamic -l gthread-2.0 -l z -l dl obj/nogui/db.o: In function `CAddrDB::WriteAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/db.cpp:511: undefined reference to `CAddress::GetKey() const' obj/nogui/db.o: In function `CAddrDB::EraseAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/db.cpp:516: undefined reference to `CAddress::GetKey() const' obj/nogui/db.o: In function `CAddrDB::LoadAddresses()': /home/bitman/Bitcoin/Trunk/src/src/db.cpp:532: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/db.cpp:534: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/db.cpp:564: undefined reference to `CAddress::GetKey() const' /home/bitman/Bitcoin/Trunk/src/src/db.cpp:562: undefined reference to `CAddress::CAddress()' obj/nogui/db.o: In function `operator>><CAddress>': /home/bitman/Bitcoin/Trunk/src/src/protocol.h:77: undefined reference to `CAddress::Init()' obj/nogui/db.o: In function `CWallet::LoadKey(CKey const&)': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:61: undefined reference to `CCryptoKeyStore::AddKey(CKey const&)' obj/nogui/db.o: In function `CWallet::LoadCryptedKey(std::vector<unsigned char, std::allocator<unsigned char> > const&, std::vector<unsign ed char, std::allocator<unsigned char> > const&)': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:63: undefined reference to `CCryptoKeyStore::AddCryptedKey(std::vector<unsigned char, std::all ocator<unsigned char> > const&, std::vector<unsigned char, std::allocator<unsigned char> > const&)' obj/nogui/db.o: In function `CWalletDB::LoadWallet(CWallet*)': /home/bitman/Bitcoin/Trunk/src/src/db.cpp:857: undefined reference to `CAddress::ToString() const' obj/nogui/db.o: In function `Unserialize<CDataStream>': /home/bitman/Bitcoin/Trunk/src/src/protocol.h:77: undefined reference to `CAddress::Init()' obj/nogui/net.o: In function `Lookup(char const*, std::vector<CAddress, std::allocator<CAddress> >&, int, int, bool, int, bool)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:260: undefined reference to `CAddress::CAddress(unsigned int, unsigned short, unsigned long lon g)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:277: undefined reference to `CAddress::CAddress(unsigned int, unsigned short, unsigned long lon g)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:278: undefined reference to `CAddress::IsValid() const' obj/nogui/net.o: In function `FindNode(CAddress)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:638: undefined reference to `operator==(CAddress const&, CAddress const&)' obj/nogui/net.o: In function `CNode::CloseSocketDisconnect()': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:711: undefined reference to `CAddress::ToString() const' obj/nogui/net.o: In function `ConnectSocket(CAddress const&, unsigned int&, int)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:103: undefined reference to `CAddress::GetSockAddr() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:102: undefined reference to `CAddress::IsRoutable() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:103: undefined reference to `CAddress::GetSockAddr() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:192: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:218: undefined reference to `CAddress::ToString() const' obj/nogui/net.o: In function `GetMyExternalIP2(CAddress const&, char const*, char const*, unsigned int&)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:300: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:330: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:331: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:332: undefined reference to `CAddress::IsRoutable() const' obj/nogui/net.o: In function `GetMyExternalIP(unsigned int&)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:345: undefined reference to `CAddress::CAddress()' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:361: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:380: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:365: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:366: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:384: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:385: undefined reference to `CAddress::IsValid() const' obj/nogui/net.o: In function `__static_initialization_and_destruction_0': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:47: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:65: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' obj/nogui/net.o: In function `AddAddress(CAddress, long long, CAddrDB*)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:441: undefined reference to `CAddress::IsRoutable() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:452: undefined reference to `CAddress::GetKey() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:456: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:457: undefined reference to `CAddress::GetKey() const' obj/nogui/net.o: In function `DNSAddressSeed()': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1182: undefined reference to `CAddress::GetByte(int) const' obj/nogui/net.o: In function `AddressCurrentlyConnected(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:501: undefined reference to `CAddress::GetKey() const' obj/nogui/net.o: In function `StartNode(void*)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1673: undefined reference to `CAddress::CAddress(unsigned int, unsigned short, unsigned long lo ng)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1674: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1674: undefined reference to `CAddress::GetByte(int) const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1690: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1695: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1696: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1638: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' obj/nogui/net.o: In function `ThreadSocketHandler2(void*)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:883: undefined reference to `CAddress::CAddress(sockaddr_in const&, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:901: undefined reference to `CAddress::ToString() const' obj/nogui/net.o: In function `ConnectNode(CAddress, long long)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:664: undefined reference to `CAddress::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:667: undefined reference to `CAddress::GetKey() const' obj/nogui/net.o: In function `std::map<std::vector<unsigned char, std::allocator<unsigned char> >, CAddress, std::less<std::vector<unsigne d char, std::allocator<unsigned char> > >, std::allocator<std::pair<std::vector<unsigned char, std::allocator<unsigned char> > const, CAdd ress> > >::operator[](std::vector<unsigned char, std::allocator<unsigned char> > const&)': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_map.h:348: undefined reference to `CAddress::CAddress()' obj/nogui/net.o: In function `ConnectNode(CAddress, long long)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:674: undefined reference to `CAddress::ToString() const' obj/nogui/net.o: In function `OpenNetworkConnection(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1457: undefined reference to `CAddress::IsIPv4() const' obj/nogui/net.o: In function `ThreadOpenConnections2(void*)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1300: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char> , std::allocator<char> >, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1301: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1318: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char> , std::allocator<char> >, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1319: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1380: undefined reference to `CAddress::CAddress()' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1395: undefined reference to `CAddress::IsIPv4() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1395: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1445: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:1368: undefined reference to `CAddress::CAddress()' obj/nogui/net.o: In function `ThreadGetMyExternalIP(void*)': /home/bitman/Bitcoin/Trunk/src/src/net.cpp:421: undefined reference to `CAddress::ToStringIP() const' /home/bitman/Bitcoin/Trunk/src/src/net.cpp:422: undefined reference to `CAddress::IsRoutable() const' obj/nogui/net.o: In function `CNode::PushAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:240: undefined reference to `CAddress::IsValid() const' obj/nogui/net.o: In function `std::less<CAddress>::operator()(CAddress const&, CAddress const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CAddress c onst&, CAddress const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CAddress c onst&, CAddress const&)' obj/nogui/net.o: In function `CNode::BeginMessage(char const*)': /home/bitman/Bitcoin/Trunk/src/src/net.h:283: undefined reference to `CMessageHeader::CMessageHeader(char const*, unsigned int)' obj/nogui/net.o: In function `CNode': /home/bitman/Bitcoin/Trunk/src/src/net.h:153: undefined reference to `CAddress::CAddress()' obj/nogui/net.o: In function `CNode::PushVersion()': /home/bitman/Bitcoin/Trunk/src/src/net.h:357: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.h:356: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' obj/nogui/irc.o: In function `DecodeAddress(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, CAddress&)': /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:51: undefined reference to `CAddress::CAddress(unsigned int, unsigned short, unsigned long long )' obj/nogui/irc.o: In function `GetIPFromIRC(unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned int&)': /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:230: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:231: undefined reference to `CAddress::IsValid() const' obj/nogui/irc.o: In function `ThreadIRCSeed2(void*)': /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:272: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:276: undefined reference to `CAddress::CAddress(char const*, int, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:277: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:304: undefined reference to `CAddress::IsRoutable() const' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:333: undefined reference to `CAddress::CAddress()' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:392: undefined reference to `CAddress::CAddress()' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:336: undefined reference to `CAddress::ToStringIP() const' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:337: undefined reference to `CAddress::IsRoutable() const' /home/bitman/Bitcoin/Trunk/src/src/irc.cpp:397: undefined reference to `CAddress::ToString() const' obj/nogui/main.o: In function `EraseFromWallets': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:112: undefined reference to `CWallet::EraseFromWallet(uint256)' obj/nogui/main.o: In function `CWallet::GetDebit(CTransaction const&) const': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:134: undefined reference to `CWallet::GetDebit(CTxIn const&) const' obj/nogui/main.o: In function `SyncWithWallets': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:118: undefined reference to `CWallet::AddToWalletIfInvolvingMe(CTransaction const&, CBlock con st*, bool)' obj/nogui/main.o: In function `ResendWalletTransactions': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:148: undefined reference to `CWallet::ResendWalletTransactions()' obj/nogui/main.o: In function `GetTransaction': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:104: undefined reference to `CWallet::GetTransaction(uint256 const&, CWalletTx&)' obj/nogui/main.o: In function `std::less<CInv>::operator()(CInv const&, CInv const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' obj/nogui/main.o: In function `SendMessages(CNode*, bool)': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2537: undefined reference to `CInv::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2402: undefined reference to `CAddress::IsRoutable() const' obj/nogui/main.o: In function `CNode::PushAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:240: undefined reference to `CAddress::IsValid() const' obj/nogui/main.o: In function `CreateNewBlock(CReserveKey&)': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2669: undefined reference to `CReserveKey::GetReservedKey()' obj/nogui/main.o: In function `PrintWallets': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:136: undefined reference to `CWallet::PrintWallet(CBlock const&)' obj/nogui/main.o: In function `CBlock::AcceptBlock()': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1324: undefined reference to `CInv::CInv(int, uint256 const&)' obj/nogui/main.o: In function `CheckWork(CBlock*, CWallet&, CReserveKey&)': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2886: undefined reference to `CReserveKey::KeepKey()' obj/nogui/main.o: In function `~CReserveKey': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1768: undefined reference to `CAddress::CAddress()' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1769: undefined reference to `CAddress::CAddress()' obj/nogui/main.o: In function `Unserialize<CDataStream>': /home/bitman/Bitcoin/Trunk/src/src/protocol.h:77: undefined reference to `CAddress::Init()' /home/bitman/Bitcoin/Trunk/src/src/protocol.h:77: undefined reference to `CAddress::Init()' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1810: undefined reference to `CAddress::IsRoutable() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1787: undefined reference to `CAddress::ToString() const' obj/nogui/main.o: In function `CNode::PushVersion()': /home/bitman/Bitcoin/Trunk/src/src/net.h:357: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/net.h:356: undefined reference to `CAddress::CAddress(char const*, bool, unsigned long long)' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1939: undefined reference to `CInv::ToString() const' obj/nogui/main.o: In function `std::less<CInv>::operator()(CInv const&, CInv const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' obj/nogui/main.o: In function `CNode::AskFor(CInv const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:263: undefined reference to `CInv::ToString() const' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1882: undefined reference to `CAddress::IsIPv4() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1888: undefined reference to `CAddress::IsRoutable() const' obj/nogui/main.o: In function `CNode::PushAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:240: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/net.h:240: undefined reference to `CAddress::IsValid() const' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1988: undefined reference to `CInv::IsKnownType() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1963: undefined reference to `CInv::ToString() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1982: undefined reference to `CInv::CInv(int, uint256 const&)' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:1995: undefined reference to `CInv::GetCommand() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2027: undefined reference to `CInv::CInv(int, uint256 const&)' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2086: undefined reference to `CInv::CInv(int, uint256 const&)' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2140: undefined reference to `CInv::CInv(int, uint256 const&)' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2108: undefined reference to `CInv::CInv(int, uint256 const&)' obj/nogui/main.o: In function `CNode::PushAddress(CAddress const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:240: undefined reference to `CAddress::IsValid() const' obj/nogui/main.o: In function `ProcessMessage': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2190: undefined reference to `CWallet::GetKeyFromPool(std::vector<unsigned char, std::allocato r<unsigned char> >&, bool)' obj/nogui/main.o: In function `ProcessMessages(CNode*)': /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2276: undefined reference to `CMessageHeader::CMessageHeader()' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2292: undefined reference to `CMessageHeader::CMessageHeader()' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2294: undefined reference to `CMessageHeader::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2296: undefined reference to `CMessageHeader::GetCommand() const' /home/bitman/Bitcoin/Trunk/src/src/main.cpp:2299: undefined reference to `CMessageHeader::GetCommand() const' obj/nogui/main.o: In function `std::less<CAddress>::operator()(CAddress const&, CAddress const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CAddress c onst&, CAddress const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CAddress c onst&, CAddress const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CAddress c onst&, CAddress const&)' obj/nogui/main.o: In function `std::less<CInv>::operator()(CInv const&, CInv const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' obj/nogui/main.o:/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: more undefined references t o `operator<(CInv const&, CInv const&)' follow obj/nogui/main.o: In function `CNode::AskFor(CInv const&)': /home/bitman/Bitcoin/Trunk/src/src/net.h:263: undefined reference to `CInv::ToString() const' obj/nogui/main.o: In function `void Unserialize_impl<CDataStream, CAddress, std::allocator<CAddress> >(CDataStream&, std::vector<CAddress, std::allocator<CAddress> >&, int, int, boost::integral_constant<bool, false> const&)': /home/bitman/Bitcoin/Trunk/src/src/serialize.h:547: undefined reference to `CAddress::CAddress()' obj/nogui/main.o: In function `Unserialize<CDataStream>': /home/bitman/Bitcoin/Trunk/src/src/protocol.h:77: undefined reference to `CAddress::Init()' obj/nogui/main.o: In function `void Unserialize_impl<CDataStream, CInv, std::allocator<CInv> >(CDataStream&, std::vector<CInv, std::alloca tor<CInv> >&, int, int, boost::integral_constant<bool, false> const&)': /home/bitman/Bitcoin/Trunk/src/src/serialize.h:547: undefined reference to `CInv::CInv()' obj/nogui/main.o: In function `std::less<CInv>::operator()(CInv const&, CInv const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' obj/nogui/main.o:/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: more undefined references t o `operator<(CInv const&, CInv const&)' follow obj/nogui/main.o: In function `bool WriteSetting<int>(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int c onst&)': /home/bitman/Bitcoin/Trunk/src/src/main.h:125: undefined reference to `GetWalletFile(CWallet*, std::basic_string<char, std::char_traits<ch ar>, std::allocator<char> >&)' obj/nogui/main.o: In function `std::less<CInv>::operator()(CInv const&, CInv const&) const': /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_function.h:227: undefined reference to `operator<(CInv const &, CInv const&)' obj/nogui/rpc.o: In function `GetAccountBalance(CWalletDB&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:635: undefined reference to `CWalletTx::GetAccountAmounts(std::basic_string<char, std::char_tra its<char>, std::allocator<char> > const&, long long&, long long&, long long&, long long&) const' obj/nogui/rpc.o: In function `WalletTxToJSON(CWalletTx const&, std::vector<json_spirit::Pair_impl<json_spirit::Config_vector<std::basic_st ring<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Pair_impl<json_spirit::Config_vector<std::basic _string<char, std::char_traits<char>, std::allocator<char> > > > > >&)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:95: undefined reference to `CWalletTx::GetTxTime() const' obj/nogui/rpc.o: In function `CCryptoKeyStore::Lock()': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:97: undefined reference to `CCryptoKeyStore::SetCrypted()' obj/nogui/rpc.o: In function `keypoolrefill(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::ch ar_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std ::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1264: undefined reference to `CWallet::TopUpKeyPool()' obj/nogui/rpc.o: In function `encryptwallet(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::ch ar_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std ::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1444: undefined reference to `CWallet::EncryptWallet(std::basic_string<char, std::char_traits<c har>, std::allocator<char> > const&)' obj/nogui/rpc.o: In function `walletpassphrasechange(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char , std::char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string< char, std::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1383: undefined reference to `CWallet::ChangeWalletPassphrase(std::basic_string<char, std::char _traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' obj/nogui/rpc.o: In function `walletpassphrase(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std: :char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1335: undefined reference to `CWallet::Unlock(std::basic_string<char, std::char_traits<char>, s td::allocator<char> > const&)' obj/nogui/rpc.o: In function `getbalance(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_ traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::c har_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:686: undefined reference to `CWalletTx::GetAmounts(long long&, long long&, std::list<std::pair< CBitcoinAddress, long long>, std::allocator<std::pair<CBitcoinAddress, long long> > >&, std::list<std::pair<CBitcoinAddress, long long>, s td::allocator<std::pair<CBitcoinAddress, long long> > >&, long long&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&) const' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:664: undefined reference to `CWallet::GetBalance() const' obj/nogui/rpc.o: In function `sendtoaddress(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::ch ar_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std ::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:526: undefined reference to `CWallet::SendMoneyToBitcoinAddress(CBitcoinAddress const&, long lo ng, CWalletTx&, bool)' obj/nogui/rpc.o: In function `sendfrom(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_tr aits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::cha r_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:789: undefined reference to `CWallet::SendMoneyToBitcoinAddress(CBitcoinAddress const&, long lo ng, CWalletTx&, bool)' obj/nogui/rpc.o: In function `ListTransactions(CWalletTx const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > co nst&, int, bool, std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_traits<char>, std::alloc ator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_traits<char>, std::a llocator<char> > > > > >&)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1006: undefined reference to `CWalletTx::GetAmounts(long long&, long long&, std::list<std::pair <CBitcoinAddress, long long>, std::allocator<std::pair<CBitcoinAddress, long long> > >&, std::list<std::pair<CBitcoinAddress, long long>, std::allocator<std::pair<CBitcoinAddress, long long> > >&, long long&, std::basic_string<char, std::char_traits<char>, std::allocator<char > >&) const' obj/nogui/rpc.o: In function `CWallet::GetDebit(CTransaction const&) const': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:134: undefined reference to `CWallet::GetDebit(CTxIn const&) const' /home/bitman/Bitcoin/Trunk/src/src/wallet.h:134: undefined reference to `CWallet::GetDebit(CTxIn const&) const' obj/nogui/rpc.o: In function `GetAccountAddress(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:382: undefined reference to `CWallet::GetKeyFromPool(std::vector<unsigned char, std::allocator< unsigned char> >&, bool)' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:385: undefined reference to `CWallet::SetAddressBookName(CBitcoinAddress const&, std::basic_str ing<char, std::char_traits<char>, std::allocator<char> > const&)' obj/nogui/rpc.o: In function `setaccount(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_ traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::c har_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:435: undefined reference to `CWallet::SetAddressBookName(CBitcoinAddress const&, std::basic_str ing<char, std::char_traits<char>, std::allocator<char> > const&)' obj/nogui/rpc.o: In function `getnewaddress(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::ch ar_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std ::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:340: undefined reference to `CWallet::TopUpKeyPool()' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:344: undefined reference to `CWallet::GetKeyFromPool(std::vector<unsigned char, std::allocator< unsigned char> >&, bool)' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:348: undefined reference to `CWallet::SetAddressBookName(CBitcoinAddress const&, std::basic_str ing<char, std::char_traits<char>, std::allocator<char> > const&)' obj/nogui/rpc.o: In function `listaccounts(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::cha r_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std: :char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1174: undefined reference to `CWalletTx::GetAmounts(long long&, long long&, std::list<std::pair <CBitcoinAddress, long long>, std::allocator<std::pair<CBitcoinAddress, long long> > >&, std::list<std::pair<CBitcoinAddress, long long>, std::allocator<std::pair<CBitcoinAddress, long long> > >&, long long&, std::basic_string<char, std::char_traits<char>, std::allocator<char > >&) const' obj/nogui/rpc.o: In function `listtransactions(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std: :char_traits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1113: undefined reference to `CWalletTx::GetTxTime() const' obj/nogui/rpc.o: In function `sendmany(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_tr aits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::cha r_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:853: undefined reference to `CWallet::CreateTransaction(std::vector<std::pair<CScript, long lon g>, std::allocator<std::pair<CScript, long long> > > const&, CWalletTx&, CReserveKey&, long long&)' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:856: undefined reference to `CWallet::GetBalance() const' obj/nogui/rpc.o: In function `~CReserveKey': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' obj/nogui/rpc.o: In function `sendmany(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_tr aits<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::cha r_traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:860: undefined reference to `CWallet::CommitTransaction(CWalletTx&, CReserveKey&)' obj/nogui/rpc.o: In function `~CReserveKey': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' /home/bitman/Bitcoin/Trunk/src/src/wallet.h:220: undefined reference to `CReserveKey::ReturnKey()' obj/nogui/rpc.o: In function `getinfo(std::vector<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char_tra its<char>, std::allocator<char> > > >, std::allocator<json_spirit::Value_impl<json_spirit::Config_vector<std::basic_string<char, std::char _traits<char>, std::allocator<char> > > > > > const&, bool)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:306: undefined reference to `CWallet::GetBalance() const' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:309: undefined reference to `CAddress::ToStringIPPort() const' /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:315: undefined reference to `CWallet::GetOldestKeyPoolTime()' obj/nogui/rpc.o: In function `CCryptoKeyStore::Lock()': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:97: undefined reference to `CCryptoKeyStore::SetCrypted()' obj/nogui/rpc.o: In function `ThreadTopUpKeyPool(void*)': /home/bitman/Bitcoin/Trunk/src/src/rpc.cpp:1275: undefined reference to `CWallet::TopUpKeyPool()' obj/nogui/rpc.o: In function `CCryptoKeyStore::Lock()': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:97: undefined reference to `CCryptoKeyStore::SetCrypted()' obj/nogui/rpc.o: In function `CWallet::GetDebit(CTransaction const&) const': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:134: undefined reference to `CWallet::GetDebit(CTxIn const&) const' obj/nogui/init.o: In function `AppInit2(int, char**)': /home/bitman/Bitcoin/Trunk/src/src/init.cpp:392: undefined reference to `CWallet::LoadWallet(bool&)' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:420: undefined reference to `CWallet::ScanForWalletTransactions(CBlockIndex*, bool)' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:440: undefined reference to `CWallet::ReacceptWalletTransactions()' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:486: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char> , std::allocator<char> >, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:487: undefined reference to `CAddress::IsValid() const' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:498: undefined reference to `CAddress::CAddress(std::basic_string<char, std::char_traits<char> , std::allocator<char> >, bool, unsigned long long)' /home/bitman/Bitcoin/Trunk/src/src/init.cpp:500: undefined reference to `CAddress::IsValid() const' obj/nogui/init.o: In function `CKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:11: undefined reference to `vtable for CKeyStore' obj/nogui/init.o: In function `CWallet': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:43: undefined reference to `vtable for CWallet' obj/nogui/init.o: In function `~CCryptoKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:57: undefined reference to `vtable for CCryptoKeyStore' obj/nogui/init.o: In function `~CBasicKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' obj/nogui/init.o: In function `~CKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:11: undefined reference to `vtable for CKeyStore' obj/nogui/init.o: In function `~CBasicKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' obj/nogui/init.o: In function `~CWallet': /home/bitman/Bitcoin/Trunk/src/src/wallet.h:17: undefined reference to `vtable for CWallet' obj/nogui/init.o: In function `~CCryptoKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:57: undefined reference to `vtable for CCryptoKeyStore' obj/nogui/init.o: In function `~CBasicKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' obj/nogui/init.o: In function `~CKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:11: undefined reference to `vtable for CKeyStore' obj/nogui/init.o: In function `~CCryptoKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:57: undefined reference to `vtable for CCryptoKeyStore' obj/nogui/init.o: In function `~CBasicKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' obj/nogui/init.o: In function `~CKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:11: undefined reference to `vtable for CKeyStore' obj/nogui/init.o: In function `~CBasicKeyStore': /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' /home/bitman/Bitcoin/Trunk/src/src/keystore.h:26: undefined reference to `vtable for CBasicKeyStore' collect2: ld returned 1 exit status make: *** [bitcoind] Error 1 Any idea what's wrong? Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on September 30, 2011, 08:15:30 PM I found the problem in case anyone else is interested. You have to add some more headers and objects to the makefile.centos so that it looks like this:
Code: HEADERS=base58.h \ bignum.h \ crypter.h \ db.h \ headers.h \ init.h \ irc.h \ key.h \ keystore.h \ main.h \ net.h \ noui.h \ protocol.h \ rpc.h \ script.h \ serialize.h \ strlcpy.h \ ui.h \ uibase.h \ uint256.h \ util.h \ wallet.h OBJS=obj/crypter.o \ obj/db.o \ obj/init.o \ obj/irc.o \ obj/keystore.o \ obj/main.o \ obj/net.o \ obj/protocol.o \ obj/rpc.o \ obj/script.o \ obj/util.o \ obj/wallet.o \ cryptopp/obj/sha.o \ cryptopp/obj/cpu.o Also, it seems unrelated but sha256.cpp is not included with the v0.4.0 source. I had to copy it from a previous version. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 01, 2011, 09:27:57 AM are there any official pre-compiled binaries available for centos 5.7?
damn, i tried compiling this following those instructions and everything went well up until making the final binary... i get several hundred lines looking like this... Code: serialize.h: In function âvoid Unserialize(Stream&, std::vector<T, A>&, int, int)â: serialize.h:556: error: âboostâ has not been declared serialize.h:556: error: expected primary-expression before â>â token serialize.h:556: error: expected primary-expression before â)â token serialize.h: At global scope: serialize.h:612: error: expected â,â or â...â before â::â token serialize.h:612: error: ISO C++ forbids declaration of âboostâ with no type serialize.h: In function âunsigned int GetSerializeSize(int)â: serialize.h:615: error: âboostâ is not a class or namespace serialize.h:615: error: âitemâ was not declared in this scope serialize.h:615: error: ânTypeâ was not declared in this scope serialize.h:615: error: ânVersionâ was not declared in this scope serialize.h:616: error: âboostâ is not a class or namespace serialize.h:617: error: âboostâ is not a class or namespace serialize.h: At global scope: serialize.h:622: error: expected â,â or â...â before â::â token serialize.h:622: error: ISO C++ forbids declaration of âboostâ with no type serialize.h: In function âvoid Serialize(Stream&, int)â: serialize.h:624: error: âboostâ is not a class or namespace serialize.h:624: error: âitemâ was not declared in this scope serialize.h:624: error: ânTypeâ was not declared in this scope serialize.h:624: error: ânVersionâ was not declared in this scope serialize.h:625: error: âboostâ is not a class or namespace serialize.h:626: error: âboostâ is not a class or namespace etc, etc x 1000. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on November 03, 2011, 04:37:27 PM damn, i tried compiling this following those instructions and everything went well up until making the final binary... i get several hundred lines looking like this... I had similar problems and I think I know what's wrong. That PDF suggests using a lot of relative paths, such as --prefix=../../Bitcoin/Deps or --prefix=~/Bitcoin/Deps/ Instead, use absolute paths for everything. Like this: --prefix=/home/brad/Bitcoin/Deps It sounds strange that it would matter, but I'm pretty sure that will work. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 03, 2011, 10:00:59 PM damn, i tried compiling this following those instructions and everything went well up until making the final binary... i get several hundred lines looking like this... I had similar problems and I think I know what's wrong. That PDF suggests using a lot of relative paths, such as --prefix=../../Bitcoin/Deps or --prefix=~/Bitcoin/Deps/ Instead, use absolute paths for everything. Like this: --prefix=/home/brad/Bitcoin/Deps It sounds strange that it would matter, but I'm pretty sure that will work. thanks, i did try this too (using jfreak's guide on another forum), but didn't work... i also then started from scratch trying to install 0.3.24 and got the same errors, of which i don't remember what they were now. ...but i'll post said errors here later today and see if anyone knows WTF is going on with it :D so, did you get it compiled Brad? edit: sorry, you said for EVERYTHING... i can't be sure i did it for all of them, i'll try that and make doubly sure next time, thanks. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 03, 2011, 11:52:15 PM one more thing Brad, where exactly did you copy sha256.cpp from, and which folder did you put it in before compiling?
cheers. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on November 04, 2011, 02:06:33 AM so, did you get it compiled Brad? Yes. I've compiled it successfully about a dozen times on several different CentOS 5.5-5.7 servers, from version 0.3.21 through v0.4.0. It has been an extraordinary hassle every time, and I've run into all the exact problems you're encountering, but in the end I've managed to finally get it to work each time. I would recommend starting from scratch. Then go through that PDF guide and make sure to use absolute paths on everything -- all the dependencies and the DEPSDIR variable in the makefile. The guide uses relative paths with ../ in a few cases and it also uses paths relative to home with the tilde (~). Make them all absolute. I got sha256.cpp from an old version of the source. I think it came with v0.3.21 but then for some reason it wasn't included with any versions after that. Save it into your source directory along with all the other cpp files (/home/brad/Bitcoin/Trunk/src/src). If you still can't find it, send me a PM with your e-mail address and I can send you a copy along with my makefile. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 04, 2011, 04:01:23 AM okay going right back to the beginning, this is what i get from boost:
Code: ./bjam --prefix=/home/Bitcoin/Deps link=static runtime-link=static install Performing configuration checks - has_icu builds : no warning: Graph library does not contain MPI-based parallel components. note: to enable them, add "using mpi ;" to your user-config.jam - ../config//has_gcc_visibility builds : yes - ../config//has_long_double_support builds : yes warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. Component configuration: - date_time : building - filesystem : building - graph : building - graph_parallel : building - iostreams : building - math : building - mpi : building - program_options : building - python : building - random : building - regex : building - serialization : building - signals : building - system : building - test : building - thread : building - wave : building ...patience... ...patience... ...patience... ...found 23153 targets... ...updating 4 targets... gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.1.2/release/link-static/runtime-link-static/threading-multi/bzip2.o libs/iostreams/src/bzip2.cpp:20:56: error: bzlib.h: No such file or directory libs/iostreams/src/bzip2.cpp:31: error: âBZ_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:32: error: âBZ_RUN_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:33: error: âBZ_FLUSH_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:34: error: âBZ_FINISH_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:35: error: âBZ_STREAM_ENDâ was not declared in this scope libs/iostreams/src/bzip2.cpp:36: error: âBZ_SEQUENCE_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:37: error: âBZ_PARAM_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:38: error: âBZ_MEM_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:39: error: âBZ_DATA_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:40: error: âBZ_DATA_ERROR_MAGICâ was not declared in this scope libs/iostreams/src/bzip2.cpp:41: error: âBZ_IO_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:42: error: âBZ_UNEXPECTED_EOFâ was not declared in this scope libs/iostreams/src/bzip2.cpp:43: error: âBZ_OUTBUFF_FULLâ was not declared in this scope libs/iostreams/src/bzip2.cpp:44: error: âBZ_CONFIG_ERRORâ was not declared in this scope libs/iostreams/src/bzip2.cpp:48: error: âBZ_FINISHâ was not declared in this scope libs/iostreams/src/bzip2.cpp:49: error: âBZ_RUNâ was not declared in this scope libs/iostreams/src/bzip2.cpp: In static member function âstatic void boost::iostreams::bzip2_error::check(int)â: libs/iostreams/src/bzip2.cpp:62: error: âBZ_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:63: error: âBZ_RUN_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:64: error: âBZ_FLUSH_OKâ was not declared in this scope libs/iostreams/src/bzip2.cpp:65: error: âBZ_FINISH_OKâ was not declared in this scope etc, etc. i might try this on a different box and see if the output is identical. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 04, 2011, 04:25:14 AM question about this line before i proceed...
# ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32 should this be: # ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl-1.0.0d linux-generic32 ? or does it just create the dir called 'openssl' if it doesn't exist yet? Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: Raoul Duke on November 04, 2011, 04:46:43 AM question about this line before i proceed... # ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32 should this be: # ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl-1.0.0d linux-generic32 ? or does it just create the dir called 'openssl' if it doesn't exist yet? The right way should be # ./Configure --prefix=/home/user/Bitcoin/Deps --openssldir=/home/user/Bitcoin/Deps/openssl-1.0.0d linux-generic32 It will create the dir if I'm not mistaken and copy the right openssl version for your arch. to it I think I'll give it a try again and see if this time I can compile it in CentOS ;) Was almost thinking it was a lost battle for me. And it can still be. Thanks for the tips on the thread, guys. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on November 04, 2011, 04:54:03 AM # ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32 or does it just create the dir called 'openssl' if it doesn't exist yet? It will create the openssl directory in ~/Bitcoin/Deps automatically. However, you have a few other problems with these paths, including in the previous step when you were trying to compile Boost. Your Boost compile failed, so you should get that working before moving on to the openssl compile. I think you have this part wrong: ./bjam --prefix=/home/Bitcoin/Deps link=static runtime-link=static install Check the location of your home directory by typing pwd on the prompt. That will show the complete path to your home directory. Chances are, it will be something like: /home/paybtc (or whatever your system username is) Therefore, your prefix for the Boost compile should look something like: ./bjam --prefix=/home/paybtc/Bitcoin/Deps link=static runtime-link=static install The same will be true of your paths on the openssl compile. Avoid the relative path with the tilde. It should look something like this: # ./Configure --prefix=/home/paybtc/Bitcoin/Deps --openssldir=/home/paybtc/Bitcoin/Deps/openssl linux-generic32 Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 04, 2011, 06:36:19 AM # ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32 or does it just create the dir called 'openssl' if it doesn't exist yet? It will create the openssl directory in ~/Bitcoin/Deps automatically. However, you have a few other problems with these paths, including in the previous step when you were trying to compile Boost. Your Boost compile failed, so you should get that working before moving on to the openssl compile. I think you have this part wrong: ./bjam --prefix=/home/Bitcoin/Deps link=static runtime-link=static install Check the location of your home directory by typing pwd on the prompt. That will show the complete path to your home directory. Chances are, it will be something like: /home/paybtc (or whatever your system username is) Therefore, your prefix for the Boost compile should look something like: ./bjam --prefix=/home/paybtc/Bitcoin/Deps link=static runtime-link=static install The same will be true of your paths on the openssl compile. Avoid the relative path with the tilde. It should look something like this: # ./Configure --prefix=/home/paybtc/Bitcoin/Deps --openssldir=/home/paybtc/Bitcoin/Deps/openssl linux-generic32 i'm logged in as root... /home/Bitcoin/Deps is the correct directory. actually i did get past the boost errors and am now trying the whole thing on a friend's box who basically has exactly the same set up (centos 5.7 on a vps). this time i thought we were so close, but when we try to compile bitcoind we get this: g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -I"/home/Bitcoin/Deps/include" -o obj/nogui/rpc.o rpc.cpp virtual memory exhausted: Cannot allocate memory make: *** [obj/nogui/rpc.o] Error 1 i looked up that error in google and someone posted some kind of 'maybe' fix saying to fiddle with the memory temporarily using ulimit -v 60000 but that hasn't worked... tried many different memory sizes including 'unlimited' and we still get the same error. so close, i tells ya! Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: BradZimdack on November 04, 2011, 07:40:16 AM virtual memory exhausted: Cannot allocate memory Darn. Sorry, but I didn't run into that particular error, so I don't know what to do at this point. Maybe it's actually out of memory? The lowest-end computer I installed on had 4GB of RAM with 8GB of swap. All the systems I used were 64-bit too. It's a real shame that bitcoind is such a bear to install on CentOS. It's been so problematic that even though I've eventually managed to get it to work, it's been incentive enough for me to investigate other Linux distributions. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 04, 2011, 08:44:52 AM well, thanks heaps, i finally got it to work on ONE box with centos 5.7 even though for some reason it didn't work on the other... but with the same OS i should just be able to use my new binary on both, yes?
i'll find out soon... :D Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 05, 2011, 06:14:43 AM update: this is happily working away on both boxes, hooray.
if anyone else has trouble with it, or wants a copy of my binary, let me know. thanks Michael Erwin Steurer, jfreak53, bradzimdack, psy :D in summary: - i followed jfreak's guide here: http://www.bitcoinforums.net/threads/installing-bitcoind-on-centos-5.146/ - i specified ALL directories as absolute. - i used jfreak's downloadable makefile.centos, but modified it with Brad's header/object list. - i copied sha256.cpp into the src folder before compiling. Title: Re: Problem Compiling v0.4.0 on CentOS 5.7 Post by: payb.tc on November 05, 2011, 09:02:43 AM oops, maybe spoke too soon... https://bitcointalk.org/index.php?topic=50937.new#new
|