marcus_of_augustus (OP)
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
May 23, 2011, 09:05:26 AM Last edit: May 23, 2011, 08:57:00 PM by minute_of_angle |
|
$ make -f makefile.unix bitcoind g++ -c -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -DNOPCH -DFOURWAYSSE2 -DUSE_SSL -DUSE_UPNP=0 -o obj/nogui/util.o util.cpp In file included from util.cpp:4: headers.h:38:27: error: openssl/ecdsa.h: No such file or directory
$ openssl version OpenSSL 1.0.0b-fips 16 Nov 2010
Soooo, no ecdsa.h included with openssl 1.0.0b. Do I need to ruin my repository 'adhering' linux just to build bitcoin? What gives here?
|
|
|
|
theymos
Administrator
Legendary
Offline
Activity: 5390
Merit: 13427
|
|
May 23, 2011, 09:28:21 AM |
|
OpenSSL 1.0.0b does have ECDSA. You're using some modified version. A few distros remove ECDSA due to (overblown) patent concerns.
|
1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
|
|
|
error
|
|
May 23, 2011, 09:28:49 AM |
|
Don't build bitcoin on a Red Hat derived system. Red Hat strips all the ECC stuff out of OpenSSL.
|
3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
|
|
|
marcus_of_augustus (OP)
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
May 23, 2011, 09:35:46 AM |
|
What if I like Redhat or CentOS?
Bitcoin just cannot be built cleanly on them without a protracted battle with repository nazis or jacking your system (think SElinux scrap)?
Basically, I'm SOOL if I want to build "officially" on anything RH derived is what you are saying, right?
|
|
|
|
ribuck
Donator
Hero Member
Offline
Activity: 826
Merit: 1060
|
|
May 23, 2011, 11:36:27 AM |
|
What if I like Redhat or CentOS?
Just install OpenSSL from a tarball (from http://www.openssl.org/source/ ) instead of from the repository. You may also have to link the static libraries libssl.a and libcrypto.a into /usr/lib
|
|
|
|
marcus_of_augustus (OP)
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
May 23, 2011, 12:41:32 PM |
|
What if I like Redhat or CentOS?
Just install OpenSSL from a tarball (from http://www.openssl.org/source/ ) instead of from the repository. You may also have to link the static libraries libssl.a and libcrypto.a into /usr/lib Have you actually done this or are you saying "this could be done"?
|
|
|
|
theymos
Administrator
Legendary
Offline
Activity: 5390
Merit: 13427
|
|
May 23, 2011, 06:30:29 PM |
|
OpenSSL is an easy compile. You can just prefix it somewhere and use that version for Bitcoin only. I used to do this when my system's OpenSSL was the wrong version.
|
1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
|
|
|
error
|
|
May 23, 2011, 07:32:08 PM |
|
Right. The "official" Bitcoin binary builds have OpenSSL statically linked in (or they'd fail spectacularly on a Red Hat box). Just do the same yourself.
|
3KzNGwzRZ6SimWuFAgh4TnXzHpruHMZmV8
|
|
|
xf2_org
Member
Offline
Activity: 98
Merit: 13
|
|
May 23, 2011, 08:38:58 PM |
|
Fedora / RHEL / derivatives have EC removed for patent related reasons (one reason why I refuse to distribute a bitcoin binary to anyone, for any reason).
It is trivial to compile and install openssl yourself, then build bitcoin. I run Fedora 14, as do many others on the forums/IRC, and use this solution without a problem.
|
|
|
|
marcus_of_augustus (OP)
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
|
May 23, 2011, 08:58:51 PM |
|
Messy.
|
|
|
|
bittrader
Jr. Member
Offline
Activity: 42
Merit: 1
|
|
May 24, 2011, 02:15:39 AM |
|
Some instructions for building OpenSSL on CentOS 5.5 for use with Bitcoin are here: http://www.staff.tugraz.at/michael.steurer/Bitcoin-CentOS5.5-V1.pdfIt's pretty straightforward. One small part of the guide is incorrect though. It tells you to run something like this: $ ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-x86_64 when actually you need this: $ ./Configure --prefix=~/Bitcoin/Deps --openssldir=/openssl linux-x86_64
|
|
|
|
yogi
Legendary
Offline
Activity: 947
Merit: 1042
Hamster ate my bitcoin
|
|
June 26, 2012, 05:14:46 PM |
|
This is also true for 32bit configure. This: $ ./Configure --prefix=~/Bitcoin/Deps --openssldir=~/Bitcoin/Deps/openssl linux-generic32 Needs to be this: $ ./Configure --prefix=~/Bitcoin/Deps --openssldir=/openssl linux-generic32
|
|
|
|
jgarzik
Legendary
Offline
Activity: 1596
Merit: 1100
|
|
June 26, 2012, 05:39:39 PM |
|
The preferred "fixes" for Red Hat, CentOS, Fedora systems are, if you want to do it yourself,
1) Download SRPM
2) Download associated source code from openssl.org
3) Edit SPECS/openssl.spec, a) replacing source tarball filename with the downloaded one b) comment out all references to source1 c) remove the "no-ec" stuff from the configure line
4) rebuild with "rpmbuild -ba SPECS/openssl.spec" or similar
5) install build rpms found in RPMS/
|
Jeff Garzik, Bloq CEO, former bitcoin core dev team; opinions are my own. Visit bloq.com / metronome.io Donations / tip jar: 1BrufViLKnSWtuWGkryPsKsxonV2NQ7Tcj
|
|
|
gmaxwell
Staff
Legendary
Offline
Activity: 4284
Merit: 8808
|
|
July 02, 2012, 02:54:15 AM |
|
The preferred "fixes" for Red Hat, CentOS, Fedora systems are, if you want to do it yourself,
I maintain modified openssl Fedora rpm's for my own use: https://people.xiph.org/~greg/openssl/Perhaps some other people might find them useful, either outright or just the spec file changes.
|
|
|
|
|
|