Last active
April 28, 2021 09:38
-
-
Save patricklodder/c7c067cc831f0d3190c2 to your computer and use it in GitHub Desktop.
Dogecoin 1.8 build for centos
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# builds dogecoin 1.8.2 with openssl 1.0.1l and boost 1.55 | |
# tested and verified on CentOS: 2.6.32-504.el6.x86_64 | |
export DOGEREF=v1.8.2 # change this if you want | |
export DEST_DIR=~/dogecoin # change this if you want, too | |
export DOGE_BUILD_LOC=~/doge-build # and this, too | |
# init env | |
mkdir -p $DOGE_BUILD_LOC | |
pushd $DOGE_BUILD_LOC | |
mkdir -p dogecoin-deps | |
pushd dogecoin-deps | |
mkdir -p lib | |
export DOGE_DEPS_LOC=$DOGE_BUILD_LOC/dogecoin-deps | |
export DOGE_STAGE_LOC=$DOGE_DEPS_LOC/staging | |
mkdir -p $DEST_DIR | |
mkdir -p $DEST_DIR/lib | |
# openssl | |
wget 'ftp://mirror.switch.ch/mirror/openssl/source/openssl-1.0.1l.tar.gz' | |
echo "b2cf4d48fe5d49f240c61c9e624193a6f232b5ed0baf010681e725963c40d1d4 openssl-1.0.1l.tar.gz" | sha256sum -c | |
tar xzf openssl-1.0.1l.tar.gz | |
pushd openssl-1.0.1l | |
./config no-shared no-zlib no-dso no-krb5 --openssldir=$DOGE_STAGE_LOC -fPIC | |
make | |
make install_sw | |
popd | |
# boost | |
wget 'https://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2' | |
echo "fff00023dd79486d444c8e29922f4072e1d451fc5a4d2b6075852ead7f2b7b52 boost_1_55_0.tar.bz2" | sha256sum -c | |
tar --warning=no-timestamp -xjf boost_1_55_0.tar.bz2 | |
pushd boost_1_55_0 | |
./bootstrap.sh --without-icu | |
./bjam toolset=gcc threadapi=pthread threading=multi variant=release link=static runtime-link=shared --without-mpi --without-python -sNO_BZIP2=1 --layout=tagged --build-type=complete --prefix="$DOGE_STAGE_LOC" $MAKEOPTS -d+2 install | |
popd | |
# bdb | |
wget 'http://download.oracle.com/berkeley-db/db-5.1.29.NC.tar.gz' | |
echo "08238e59736d1aacdd47cfb8e68684c695516c37f4fbe1b8267dde58dc3a576c db-5.1.29.NC.tar.gz" | sha256sum -c | |
tar xzf db-5.1.29.NC.tar.gz | |
pushd db-5.1.29.NC/build_unix | |
../dist/configure --prefix="$DOGE_STAGE_LOC" --enable-cxx --disable-shared --with-pic | |
make $MAKEOPTS library_build | |
make install_lib install_include | |
popd | |
# copy libs to dest dirs | |
cp -r $DOGE_STAGE_LOC/lib/*.a $DOGE_STAGE_LOC/lib/pkgconfig $DEST_DIR/lib/ | |
popd | |
# dogecoin | |
git clone https://github.com/dogecoin/dogecoin.git | |
pushd dogecoin | |
git checkout $DOGEREF | |
./autogen.sh | |
./configure --disable-upnp-default --prefix=$DEST_DIR --with-boost=$DEST_DIR --disable-maintainer-mode --disable-dependency-tracking PKG_CONFIG_PATH="$DOGE_STAGE_LOC/lib/pkgconfig" CPPFLAGS="-I$DOGE_STAGE_LOC/include ${OPTFLAGS}" LDFLAGS="-L$DEST_DIR/lib ${OPTFLAGS}" CXXFLAGS="${OPTFLAGS}" BOOST_CHRONO_EXTRALIBS="-lrt" | |
pushd src | |
make dogecoind dogecoin-cli | |
strip dogecoind | |
strip dogecoin-cli | |
cp dogecoind dogecoin-cli $DEST_DIR | |
popd | |
popd | |
popd | |
# uncomment to delete sources | |
# rm -rf $DOGE_BUILD_LOC |
Tried upgrading the boost to the latest which is v1.61.0. Same error.
I had compiled this same coin (not using this script) without compiling boost after installing boost-devel and using the flag --with-incompatible-bdb and it worked. boost-devel is using 1.53.0.
I'm going to take the boost out of this script and see what happens.
Removing the boost section from the script ended up working. Still curious why I'd be getting that error with the boost. Love to figure that out so I could use a newer version of boost. If you figure it out, let me know. I'm going to do some more tests to see if I can get it working with the boost in the script.
Dir ~/doge-build/dogecoin-deps/lib is created, but never used
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Sorry, I deleted my last comment because I had modified the script and thought that doing that was the issue.
Ran it again with the only change being an upgrade of the openssl to v1.0.1t vs. v1.0.1l which isn't available anymore via your link in the script.
Still getting the same error.
configure: error: No working boost sleep implementation found.
~/doge-build/dogecoin/src ~/doge-build/dogecoin ~/doge-build ~
g++ dogecoind.cpp -o dogecoind
In file included from script.h:10:0,
from core.h:12,
from coins.h:8,
from main.h:18,
from dogecoind.cpp:9:
util.h:104:2: error: #error missing boost sleep implementation
#error missing boost sleep implementation
^
make: *** [dogecoind] Error 1