How to obtain the STEEM client

From Steem Center
Jump to: navigation, search

One popular client for STEEM is known as Steemd. Witnesses, seeds, and miners all run this client. Other clients - such as and - are not independent clients, but rely on Steemd to function. Steemd is open source and is available on Github here:

Some Operating System's have binaries available, however you may have to compile the client in some cases.

Running CLI Wallet without a Steem Daemon

You can run CLI Wallet against any public seed if you don't have the resources (or just don't want) to run steemd.

   cli_wallet -s wss://

If you're on Windows, you may need to download cacert.pem to avoid SSL errors:

Download here:

With cacert in the same directory, you can now run:

   cli_wallet -a cacert.pem -s wss://



There are binaries (pre-compiled client) available for Windows, they are built by @bitcube.

The latest binaries (0.12.2) are available here: https:[email protected]/steem-windows-wallet-and-miner-v0-12-2

Compilation instructions





Compilation instructions


Ubuntu/Debian Linux


A prebuilt docker image has been produced and will be published by @someguy123 soon. This will work across all Linux (and possibly OSX/Windows) platforms as it is self contained.

There are no known prebuilt .deb packages as of yet.

Compilation instructions

These instructions have been tested on a completely untouched Ubuntu 16.04 - for older versions, or different debian derivatives, you may need to alter package names, or compile them by hand.

Some parts of these instructions have been copied from with several additions, including many missing dependencies, and correct submodule initialization.

Step 1 - Obtaining the dependencies

   apt-get update
   apt-get install -y gcc-4.9 g++-4.9 cmake make libbz2-dev libdb++-dev libdb-dev
   apt-get install -y libssl-dev openssl libreadline-dev autoconf libtool git
   apt-get install -y autotools-dev build-essential g++ libbz2-dev libicu-dev python-dev wget doxygen python3 python3-dev

Step 2 - Build Boost 1.60 Unfortunately, even with 16.04, the latest Boost available is 1.59 - because of this you'll need to compile BOOST by hand.

Please be aware this process can take upwards of 1 hour or longer depending on how powerful your system is.

   export BOOST_ROOT=$HOME/opt/boost_1_60_0 && \
   wget -c ''-O boost_1_60_0.tar.bz2
   tar xjf boost_1_60_0.tar.bz2
   cd boost_1_60_0/
   ./ "--prefix=$BOOST_ROOT"
   ./b2 install

Step 3 - Build Steemd

   cd ~
   git clone
   cd steem
   git submodule update --init --recursive
   export BOOST_ROOT=$HOME/opt/boost_1_60_0
   make && sudo make install

Step 4 - Configure Steem

First, make sure you're in the directory where you want your data files to go. Steem will create a folder called witness_node_data_dir in whatever directory you're currently in.

Once you're sure this is where you want the data dir to go, run Steem to generate a config file:


Press Ctrl-C after Steem starts up, this is to simply allow it to generate a config file.

Now, you can open config.ini and modify to your requirements. It's recommended to remove the account_history history plugin unless you know you're using it.

   vim witness_node_data_dir/config.ini # or nano, whatever your preferred text editor is

Be aware that you'll need to add some seed nodes to config.ini for your steem daemon to work. The seed ran by the owner of this wiki is (a better alias for You can find up-to-date steem seeds at

   seed-node =
   seed-node =
   seed-node =

Once you've done this, you'll be able to launch steemd correctly using (will not fork into the background, so may want to run it in screen/tmux):

   $ /usr/local/bin/steemd --rpc-endpoint --replay-blockchain

You can check the status of your steem daemon by running cli_wallet and running the info command

  $ /usr/local/bin/cli_wallet
  >>> info
       "head_block_num": 1234,
       "head_block_age": "19 weeks old",