epiccurious / bitcoin-core-node-builder

Spin up a secure Bitcoin Core node with ease.
Other
3 stars 0 forks source link

Add option for compiling dependencies from source #25

Open epiccurious opened 1 year ago

epiccurious commented 1 year ago
[ -d build_dependencies ] || mkdir build_dependencies/
cd build_dependencies/

## INSTALL WGET

curl -O https://ftp.gnu.org/gnu/nettle/nettle-3.9.1.tar.gz
#curl -O https://ftp.gnu.org/gnu/nettle/nettle-2.5.tar.gz
tar -xf nettle-3.9.1.tar.gz
cd nettle-3.9.1/
./configure --enable-mini-gmp
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
sudo rm -rf nettle-3.9.1/
rm nettle-3.9.1.tar.gz

https://ftp.gnu.org/gnu/nettle/nettle-2.5.tar.gz

curl -O https://ftp.gnu.org/gnu/gnutls/gnutls-3.1.5.tar.lz
tar -xf gnutls-3.1.5.tar.lz
cd gnutls-3.1.5/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../

curl -O https://ftp.gnu.org/gnu/wget/wget-1.21.4.tar.lz
tar -xf wget-1.21.4.tar.lz
cd wget-1.21.4/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../

## INSTALL JQ

curl -O https://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.xz
tar -xf autoconf-2.71.tar.xz
cd autoconf-2.71.tar.xz/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf autoconf-2.71/
rm autoconf-2.71.tar.xz

curl -O https://ftp.gnu.org/gnu/automake/automake-1.16.5.tar.xz
tar -xf automake-1.16.5.tar.xz
cd automake-1.16.5
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf automake-1.16.5/
rm automake-1.16.5.tar.xz

curl -O https://mirrors.ibiblio.org/gnu/libtool/libtool-2.4.6.tar.xz
tar -xf libtool-2.4.6.tar.xz
cd libtool-2.4.6/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf libtool-2.4.6/
rm libtool-2.4.6.tar.xz 

git clone https://github.com/jqlang/jq.git
cd jq/
git checkout $(git tag | grep -v rc | sort -V | tail -1)
git submodule update --init
autoreconf -fi
CPPFLAGS=-D_REENTRANT ./configure --with-oniguruma=builtin --disable-maintainer-mode
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf jq/

## INSTALL GPG TOOL

curl -O https://gnupg.org/ftp/gcrypt/gpgrt/libgpg-error-1.46.tar.bz2
tar -xf libgpg-error-1.46.tar.bz2
cd libgpg-error-1.46/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf libgpg-error-1.46
rm libgpg-error-1.46.tar.bz2

curl -O https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.9.4.tar.bz2
tar -xf libgcrypt-1.9.4.tar.bz2
cd libgcrypt-1.9.4/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf libgcrypt-1.9.4/
rm libgcrypt-1.9.4.tar.bz2

curl -O https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.5.5.tar.bz2
tar -xf libassuan-2.5.5.tar.bz2
cd libassuan-2.5.5/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf libassuan-2.5.5/
rm libassuan-2.5.5.tar.bz2

curl -O https://gnupg.org/ftp/gcrypt/libksba/libksba-1.6.3.tar.bz2
tar -xf libksba-1.6.3.tar.bz2
cd libksba-1.6.3/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf libksba-1.6.3/
rm libksba-1.6.3.tar.bz2

curl -O https://gnupg.org/ftp/gcrypt/npth/npth-1.6.tar.bz2
tar -xf npth-1.6.tar.bz2
cd npth-1.6/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf npth-1.6/
rm npth-1.6.tar.bz2

curl -O https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.4.2.tar.bz2
tar -xf gnupg-2.4.2.tar.bz2
cd gnupg-2.4.2/
./configure
make -j "$(($(sysctl -n hw.physicalcpu) + 1))"
sudo make install
cd ../
rm -rf gnupg-2.4.2/
rm gnupg-2.4.2.tar.bz2

user1s-MacBook-Pro:testdir user1$ jq --version
jq-1.6-dirty
user1s-MacBook-Pro:testdir user1$ gpg --version
gpg (GnuPG) 2.4.2
libgcrypt 1.9.4
Copyright (C) 2023 g10 Code GmbH
License GNU GPL-3.0-or-later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: /Users/user1/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2
epiccurious commented 1 year ago

https://noknow.info/it/os/install_nettle_from_source?lang=en#sec4