Title: Compiling Rockscluster Centos 5.5
Post by: destine on September 16, 2010, 08:13:22 AM
Hi, I saw the other thread that had some compiled the binaries however they are old and don't provide what i need. I have all the prerequisites install according to the documentation sudo make -f makefile.unix bitcoind is the command i'm using. Heres is the output: [root@test trunk]# sudo make -f makefile.unix bitcoind g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -D__WXGTK__ -DNOPCH -DFOURWAYSSE2 -I"/usr/local/include/wx-2.9" -I"/usr/local/lib/wx/include/gtk2-unicode-debug-static-2.9" -o obj/nogui/util.o util.cpp In file included from util.cpp:5: headers.h:38:27: error: openssl/ecdsa.h: No such file or directory key.h:46: error: ISO C++ forbids declaration of 'EC_KEY' with no type key.h:46: error: expected ';' before '*' token key.h: In constructor 'CKey::CKey()': key.h:52: error: 'pkey' was not declared in this scope key.h:52: error: 'EC_KEY_new_by_curve_name' was not declared in this scope key.h: In copy constructor 'CKey::CKey(const CKey&)': key.h:60: error: 'pkey' was not declared in this scope key.h:60: error: 'const class CKey' has no member named 'pkey' key.h:60: error: 'EC_KEY_dup' was not declared in this scope key.h: In member function 'CKey& CKey::operator=(const CKey&)': key.h:68: error: 'pkey' was not declared in this scope key.h:68: error: 'const class CKey' has no member named 'pkey' key.h:68: error: 'EC_KEY_copy' was not declared in this scope key.h: In destructor 'CKey::~CKey()': key.h:76: error: 'pkey' was not declared in this scope key.h:76: error: 'EC_KEY_free' was not declared in this scope key.h: In member function 'void CKey::MakeNewKey()': key.h:86: error: 'pkey' was not declared in this scope key.h:86: error: 'EC_KEY_generate_key' was not declared in this scope key.h: In member function 'bool CKey::SetPrivKey(const CPrivKey&)': key.h:94: error: 'pkey' was not declared in this scope key.h:94: error: 'd2i_ECPrivateKey' was not declared in this scope key.h: In member function 'CPrivKey CKey::GetPrivKey() const': key.h:102: error: 'pkey' was not declared in this scope key.h:102: error: 'i2d_ECPrivateKey' was not declared in this scope key.h: In member function 'bool CKey::SetPubKey(const std::vector<unsigned char, std::allocator<unsigned char> >&)': key.h:115: error: 'pkey' was not declared in this scope key.h:115: error: 'o2i_ECPublicKey' was not declared in this scope key.h: In member function 'std::vector<unsigned char, std::allocator<unsigned char> > CKey::GetPubKey() const': key.h:123: error: 'pkey' was not declared in this scope key.h:123: error: 'i2o_ECPublicKey' was not declared in this scope key.h: In member function 'bool CKey::Sign(uint256, std::vector<unsigned char, std::allocator<unsigned char> >&)': key.h:138: error: 'pkey' was not declared in this scope key.h:138: error: 'ECDSA_sign' was not declared in this scope key.h: In member function 'bool CKey::Verify(uint256, const std::vector<unsigned char, std::allocator<unsigned char> >&)': key.h:148: error: 'pkey' was not declared in this scope key.h:148: error: 'ECDSA_verify' was not declared in this scope db.h: In member function 'bool CDB::Exists(const K&)': db.h:142: error: 'class Db' has no member named 'exists' make: *** [obj/nogui/util.o] Error 1
I'm not sure where to go from here. I need to be able to compile the code myself as i will be adjusting it for testing purposes. Any assistance would be greatly appreciated. Cheers destine
Title: Re: Compiling Rockscluster Centos 5.5
Post by: The Madhatter on September 16, 2010, 10:46:46 AM
That means you are missing ecdsa support in openssl.
Look at the configure for your openssl. Look for -no-ec and -no-ecdsa options. Remove them, recompile/reinstall openssl.
Title: Re: Compiling Rockscluster Centos 5.5
Post by: destine on September 16, 2010, 01:27:15 PM
Thanks, i found the reference in the Configure file, where the build would auto disable ecdsa and commented it out, as seen bellow. #if (defined($disabled{"ec"})) # { # $disabled{"ecdsa"} = "forced"; # $disabled{"ecdh"} = "forced"; # }
However i still get the same error. Thanks for your help
Title: Re: Compiling Rockscluster Centos 5.5
Post by: destine on September 17, 2010, 01:53:43 AM
I've just had a suggestion from a colleague to put the openssl header file in the wanted location. Will do that when i get to my pc.
I'm still open to any other option.
Thanks people :)
Title: Re: Compiling Rockscluster Centos 5.5
Post by: destine on September 21, 2010, 11:54:24 AM
Hi, checked for the header file ecdsa>h and it is in the following path /usr/local/ssl/include/openssl/ecdsa.h i have no idea where to go from here. Any suggestions or solutions?
Title: Re: Compiling Rockscluster Centos 5.5
Post by: destine on October 11, 2010, 05:33:44 AM
heya, I manged to get past the ecdsa error. Downloaded openssl, make all, make install cp –R –L include/openssl /usr/include nano –w /bitcoin/whereverthemakefileis/makefile.unix then added –I”/usr/include” to the include path now i have one last issue to get past, the error is below. No rule to make target 'obj/nogui/util.o', needed by 'bitcoind'. I have tried downloading the util.o from MIT but it had no effect.
|