These are setup for building for my specific machines and use my network mounts for transferring files, they may however be useful as reference for someone else.
x64 PC Debian WSL (Bullseye) running on Windows 10, GCC version 10, MingW version 6 (GCC 8) - Held due to build problem on version 8(GCC 10)
Raspberry Pi 4 (4GB) Arm64 Kernel and userland Debian Bullseye
Raspberry Pi 3B (1GB) Arm64 Kernel and userland (Client running Native Arm64) Debian Bullseye
Raspberry Pi 3B (1GB) Arm64 Kernel and userland (Client running Multiarch ArmHF) Debian Bullseye
x64 PC Debian Bullseye
x64 PC Windows 10 (Client running as 64 bit)
x64 PC Windows 10 (Client Running as 32 bit)
Clean build folder needed when depends are updated.
sudo rm -r ~/GRC-Prod && \
mkdir ~/GRC-Prod && \
cd ~/GRC-Prod && \
git clone https://github.com/gridcoin-community/Gridcoin-Research && \
cd Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/master && \
./autogen.sh && \
cd depends && \
make -j6 HOST=aarch64-linux-gnu GCCFLAGS="-march=armv8-a+crc -mtune=cortex-a72" BDB_53=1 && \
cd ~/
cd ~/GRC-Prod/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/master && \
./autogen.sh && \
./configure --prefix=`pwd`/depends/aarch64-linux-gnu LDFLAGS=-static-libstdc++ --enable-glibc-back-compat --enable-reduce-exports --enable-qt59 --with-incompatible-bdb CXXFLAGS="-march=armv8-a+crc -mtune=cortex-a72" CFLAGS="-march=armv8-a+crc -mtune=cortex-a72" && \
make -j6 && \
aarch64-linux-gnu-strip ./src/qt/gridcoinresearch && \
aarch64-linux-gnu-strip ./src/gridcoinresearchd && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp ./src/qt/gridcoinresearch /mnt/n/Gridcoin/ && \
sudo cp ./src/gridcoinresearchd /mnt/n/Gridcoin/ && \
make clean
Clean build folder needed when depends are updated.
sudo rm -r ~/GRC-Testnet && \
mkdir ~/GRC-Testnet && \
cd ~/GRC-Testnet && \
git clone https://github.com/gridcoin-community/Gridcoin-Research && \
cd Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
cd depends && \
sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status" && \
make -j6 HOST=aarch64-linux-gnu GCCFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53" BDB_53=1 && \
make -j6 HOST=arm-linux-gnueabihf GCCFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53 -mfpu=crypto-neon-fp-armv8" BDB_53=1 && \
make -j6 HOST=x86_64-linux-gnu BDB_53=1 && \
make -j6 HOST=x86_64-w64-mingw32 && \
make -j6 HOST=i686-w64-mingw32 && \
cd ~/
cd ~/GRC-Testnet/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
./configure --prefix=`pwd`/depends/aarch64-linux-gnu LDFLAGS=-static-libstdc++ --enable-glibc-back-compat --enable-reduce-exports --enable-qt59 --with-incompatible-bdb CXXFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53" CFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53" && \
make -j6 && \
aarch64-linux-gnu-strip ./src/qt/gridcoinresearch && \
aarch64-linux-gnu-strip ./src/gridcoinresearchd && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp ./src/qt/gridcoinresearch /mnt/n/Gridcoin/ && \
sudo cp ./src/gridcoinresearchd /mnt/n/Gridcoin/ && \
make clean
cd ~/GRC-Testnet/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
./configure --prefix=`pwd`/depends/arm-linux-gnueabihf LDFLAGS=-static-libstdc++ --enable-glibc-back-compat --enable-reduce-exports --enable-qt59 --with-incompatible-bdb CXXFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53 -mfpu=crypto-neon-fp-armv8" CFLAGS="-march=armv8-a+crypto+crc -mtune=cortex-a53 -mfpu=crypto-neon-fp-armv8" && \
make -j6 && \
arm-linux-gnueabihf-strip ./src/qt/gridcoinresearch && \
arm-linux-gnueabihf-strip ./src/gridcoinresearchd && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp ./src/qt/gridcoinresearch /mnt/n/Gridcoin/ && \
sudo cp ./src/gridcoinresearchd /mnt/n/Gridcoin/ && \
make clean
cd ~/GRC-Testnet/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
./configure --prefix=`pwd`/depends/x86_64-linux-gnu LDFLAGS=-static-libstdc++ --enable-glibc-back-compat --enable-reduce-exports --enable-qt59 --with-incompatible-bdb && \
make -j6 && \
x86_64-linux-gnu-strip ./src/qt/gridcoinresearch && \
x86_64-linux-gnu-strip ./src/gridcoinresearchd && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp ./src/qt/gridcoinresearch /mnt/n/Gridcoin/ && \
sudo cp ./src/gridcoinresearchd /mnt/n/Gridcoin/ && \
make clean
cd ~/GRC-Testnet/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status" && \
CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/ --enable-qt59 && \
make -j6 && \
make deploy && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp release/*setup.exe /mnt/n/Gridcoin/ && \
make clean
cd ~/GRC-Testnet/Gridcoin-Research && \
git fetch --all && \
git reset --hard origin/testnet && \
./autogen.sh && \
sudo bash -c "echo 0 > /proc/sys/fs/binfmt_misc/status" && \
CONFIG_SITE=$PWD/depends/i686-w64-mingw32/share/config.site ./configure --prefix=/ --enable-qt59 && \
make -j6 && \
make deploy && \
sudo mount -t drvfs N: /mnt/n && \
sudo cp release/*setup.exe /mnt/n/Gridcoin/ && \
make clean
sudo mount -a && \
sudo rm /usr/local/bin/gridcoin* && \
sudo cp /mnt/NAS/Gridcoin/gridcoin* /usr/local/bin/ && \
sudo chmod +x /usr/local/bin/gridcoin*