zArchive~Linux Guide - gridcoin-community/Gridcoin-Wiki GitHub Wiki
Note: These instructions are for Debian based systems, openSUSE and Fedora, please see instructions on GitHub for other systems.
Pre-compiled binaries
If you prefer to use a repository rather than compile yourself, jump to Linux Downloads
Dependencies
All Installations:
Debian / Ubuntu:
sudo apt-get install git libdb-dev libdb++-dev build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libminiupnpc-dev software-properties-common libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libqrencode-dev libqt5charts5-dev
openSUSE:
sudo zypper in git icoutils libdb-4_8-devel cxxtools-devel libtool autobuild automake pkg-config libopenssl-devel libevent-devel libbsd0 libbsd-devel libboost_system-devel libboost_filesystem-devel libboost_chrono-devel libboost_program_options-devel libboost_test-devel libboost_thread-devel libminiupnpc-devel libQt5DBus5 libQt5Designer5 libQt5Core5 libQt5Core-devel libQt5Gui5 libQt5Gui-devel libqt5-qtbase-devel libqt5-qttools-devel protobuf-devel qrencode-devel libQt5Charts5-devel
Fedora:
sudo dnf install git icoutils libdb-devel libdb-cxx-devel boost-build libtool auto-buildrequires automake pkg-config openssl-devel libevent-devel libbsd libbsd-devel boost boost-devel boost-filesystem boost-chrono boost-program-options boost-test boost-thread miniupnpc-devel import-properties-plugin qt5-designer qt5 qt5-devel qt5-qtbase qt5-qtbase-devel qt5-qdbusviewer dbusmenu-qt5-devel qt5-qtbase-gui qt5-qttools-devel protobuf-devel protobuf-compiler qrencode-devel qt5-qtcharts-devel
Sync to Gridcoin Repository
New Build
For if you do not have an existing ~/Gridcoin-Research folder from a previous build.
cd ~
git clone
https://github.com/gridcoin-community/Gridcoin-Research
cd ~/Gridcoin-Research
git fetch --all
git reset --hard origin/master
OR
Upgrade Existing Build
For if you have previously built the client and have an existing ~/Gridcoin-Research folder.
cd ~/Gridcoin-Research
git fetch --all
git reset --hard origin/master
Troubleshooting
If you have trouble updating source from git try configuring git to not use ssl:
git config --global http.sslverify false
Build using Autotools
Build
cd ~/Gridcoin-Research
./autogen.sh
./configure --with-incompatible-bdb
For Systems with low RAM (e.g. <1GB RAM) such as Raspberry Pi's use the following configure command in place of the one above.
./configure --with-incompatible-bdb CXXFLAGS="--param ggc-min-expand=1 --param ggc-min-heapsize=32768"
make
Install
make install
Sometimes make install
does not work.
cd src
strip gridcoinresearchd
sudo install -m 755 gridcoinresearchd /usr/bin/gridcoinresearchd
If you intend to run the client "Headless" please skip to #Creating config file
cd qt
strip gridcoinresearch
sudo install -m 755 gridcoinresearch /usr/bin/gridcoinresearch
Look for gridcoinresearch, it should be in the current folder.
Creating config file
Once Gridcoin is installed you will need to create and set-up the configuration (conf) file.
From command line:
mkdir ~/.GridcoinResearch
chmod 700 ~/.GridcoinResearch
Within this folder create a file containing the information from the page Gridcoinresearch config file
Blockchain snapshot (optional)
If this is a clean installation, you can improve the time it takes to get into sync with the chain by downloading a snapshot. The snapshot is never perfectly up to date, but it will get you most of the way there. Save this file in your ~/.GridcoinResearch folder:
http://download.gridcoin.us/download/downloadstake/signed/snapshot.zip
Extract the snapshot, making sure the folder and the blk001.dat file are in the ~/.GridcoinResearch folder, not a snapshot sub-folder.
Finally Restart the client
SSL (optional)
You really only need SSL if you are controlling Gridcoin directly from another host over a public network/internet using RPC.
This does not apply to most people, even if you are using SSH from another computer.
First, add this line to gridcoinresearch.conf
rpcssl=1
Then, run these commands in your shell:
cd ~/.GridcoinResearch
openssl genrsa -out server.pem 2048
openssl req -new -x509 -nodes -sha1 -days 3650 -key server.pem > server.cert
gridcoinresearchd
Wait for the server to start and then type:
gridcoinresearchd getmininginfo
This should return the current difficulty and other network settings.
Known Issues
There are occasionally issues with the permission of the ~/.GridcoinResearch folder, depending on which user first built/installed/ran the binary, such as root.
Simply change the ownership of the file to your user using this command:
chown $USER -R ~/.GridcoinResearch