Building from Source
Install Rust
Section titled “Install Rust ”Install the latest version of Rust.
curl https://sh.rustup.rs -sSf | sh -s -- -y
If Rust is already installed, make sure to add the nightly version and the WebAssembly target:
# Ensure the current shell has cargosource ~/.cargo/env
# Update the Rust toolchainrustup default stablerustup update
# Add the nightly and WebAssembly targets:rustup update nightly-2023-04-16rustup target add wasm32-unknown-unknown --toolchain nightly-2023-04-16Verify your installation.
rustup show
Install dependencies
Section titled “Install dependencies ”Make sure you have all the necessary dependencies for compiling and running the Creditcoin node software.
sudo apt install make clang pkg-config libssl-dev build-essential protobuf-compiler
You may need to install & configure Network Time Protocol (NTP) Client.
Building & Installing the Creditcoin binary
Section titled “Building & Installing the Creditcoin binary ”You will be building the latest creditcoin binary from gluwa/creditcoin repository on Github using the source code in the main branch.
Download the repository by cloning it.
git clone https://github.com/gluwa/creditcoin
Move into the creditcoin folder and checkout to the main branch by running the following command.
cd creditcoin git checkout main
Build the binary with cargo.
cargo build -r
This step might take 10 - 40 minutes to finish.
Sync Chain Data
Section titled “Sync Chain Data ”Synchronize your node by running the binary inside the target/release folder.
./target/release/creditcoin-node \ --prometheus-external \# (optional) opt in to telemetry --telemetry-url "wss://telemetry.creditcoin.io/submit/ 0" \# node to connect to on boot, in order to join the network --bootnodes "/dns4/bootnode.creditcoin.network/tcp/30333/p2p/12D3KooWAEgDL126EUFxFfdQKiUhmx3BJPdszQHu9PsYsLCuavhb" "/dns4/bootnode2.creditcoin.network/tcp/30333/p2p/12D3KooWSQye3uN3bZQRRC4oZbpiAZXkP2o5UZh6S8pqyh24bF3k" "/dns4/bootnode3.creditcoin.network/tcp/30333/p2p/12D3KooWFrsEZ2aSfiigAxs6ir2kU6en4BewotyCXPhrJ7T1AzjN" \# REPLACE <yourhostname or ip> with the public IP address or host name that your node can be reached at --public-addr "/dns4/<yourhostname or ip>/tcp/30333" \# we want to connect to the mainnet --chain mainnet \# the base path to store the node's data --base-path /data \# the port to use for node-to-node communication --port 30333