Mining STEEM For Dummies

in #steemhelp4 years ago (edited)

Setup STEEM wallet and start mining step by step guide

Mining STEEM for Dummies

It is recomended that you have Ubuntu 14.04 LTS or a later version.

Open a terminal window and enter these lines one by one, give each one time to finish:

sudo apt-get update

click enter button

sudo apt-get install git cmake g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev libboost-all-dev libssl-dev libncurses5-dev doxygen libreadline-dev dh-autoreconf

click enter button

wget -O boost_1_60_0.tar.gz

click enter button

tar xzvf boost_1_60_0.tar.gz

click enter button

cd boost_1_60_0

click enter button

./ --prefix=/usr/local

click enter button

./b2 install

click enter button


click enter button

git clone

click enter button

cd secp256k1

click enter button


click enter button


click enter button


click enter button


click enter button


click enter button

git clone

click enter button

cd steem

click enter button

git submodule update --init --recursive

click enter button


click enter button


click enter button

cd programs/steemd

click enter button

./steemd --rpc-endpoint --seed-node="" --seed-node=""

click enter button

start a new terminal window and type:

cd steem/programs/cli_wallet

click enter button


click enter button

set_password "PASSWORD"

click enter button

unlock "PASSWORD"

click enter button


  • copy the output and save it in a secure location:
  • you should never give your wif private key to anyone.


"wif_priv_key": "5JsPmgU1dfKu8SHWAWkBKw1XGz97Kwz4DLwgm2bSz99qtFqTAkp",

"pub_key": "STM73jgNRFLTKSTaGWv8QfXzSopUZBsQGmrECWPvpnemjyAcBfzAc"

  • you will need your wif private key for the config.ini file in a minute,

  • this is a good time to load YOUR key in your cli_wallet terminal window like this:

import_key 5JsPmgU1dfKu8SHWAWkBKw1XGz97Kwz4DLwgm2bSz99qtFqTAkp

click enter button

now exit your cli_wallet terminal:

ctrl + c

click enter button

This is a good time to pick your account/miner name

** Account names must be all lower case, less than 15 characters, and start with a letter

lets say you pick account name george1234

you must check if the account already exists, go to:

if you get an error like this:

Server error (500) 10 assert_exception: Assert Exception itr != accounts_by_name.end(): Unable to find account 'george1234'. Did you forget to add a record for it? {"acct":"george1234"} th_a database.cpp:313 get_account

then you are in luck and the account name is available to claim, if not try another until you get this error.

now you have what you need to edit your config.ini file and start mining.

with your favorite text editor open the file steem/programs/steemd/witness_node_data_dir/config.ini

replace george1234 with your account name and this wif key 5JsPmgU1dfKu8SHWAWkBKw1XGz97Kwz4DLwgm2bSz99qtFqTAkp with yours.

# P2P nodes to connect to on startup (may specify multiple times)

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

# name of witness controlled by this node (e.g. initwitness )

witness = "george1234"

# name of miner and its private key (e.g. ["account","WIF PRIVATE KEY"] )

miner = ["george1234","5JsPmgU1dfKu8SHWAWkBKw1XGz97Kwz4DLwgm2bSz99qtFqTAkp"]

# Number of threads to use for proof of work mining

mining-threads = 2 

these are the parts you change, leave the rest as is and save your config file

go back to the steemd terminal window (hopefully it synced by now):


click enter button

to stop steemd and restart it with the following line:

./steemd --rpc-endpoint

it should start mining as soon as it catches up to the latest block.

  • after mining your first block, you set claim to your account name

when that happens here is a few things you can do in your CLI_wallet (change george1234 to your account name):

unlocked >>> get_account "george1234"  

unlocked >>> list_my_accounts  

unlocked >>> vote_for_witness george1234 joseph true true 

unlocked >>> vote george1234 "joseph" "mining-steem-for-dummies" 100 true 
  • if you get an error while following this guide please stop, and go to for assistance
  • if you assist someone with this step by step guide, please reply with FAQ's and answers.
    Thank you.

Thanks @joseph, it works. But my rate is 1 hps and estimated time to produce about 17 mln minutes.
My CPU is i7-6700K Skylake. So I doubt that 1 hps is normal. What do I do wrong?

you did not do anything wrong, 1hps means you are syncing, once synced your real hps will show.

Mine is up and running but my estimated time to produce is anywhere from 400 to 3000 minutes it seems like.... Hashrate around 13k. It keeps telling me I am getting 3, 5, etc. transactions. Sorry if this is totally ignorant but this is my first time attempting anything like this. Is this working properly? I have an i7 920 desktop, 12gb ram devoted, created 8 accounts - was that too much?

syncing! wait..

How long would it take to sync ?
Do syncing and mining processes need to be separated (when i try to mine before syncing is done, nothing happens)

thanks you,help me back

Runnint the first the the ./cli_wallet fail on:

Logging RPC to file: logs/rpc/rpc.log Starting a new wallet 2318539ms th_a main.cpp:154 main ] wdata.ws_server: ws://localhost:8090 2318550ms th_a main.cpp:159 main ] wdata.ws_user: wdata.ws_password: 2318675ms th_a websocket_api.cpp:88 on_message ] message: {"id":1,"result":true} 2318676ms th_a websocket_api.cpp:88 on_message ] message: {"id":2,"result":2} 2318677ms th_a websocket_api.cpp:88 on_message ] message: {"id":3,"result":3} 2318677ms th_a websocket_api.cpp:88 on_message ] message: {"id":4,"error":{"code":1,"message":"10 assert_exception: Assert Exception\nit->second != nullptr: \n {}\n th_a api.hpp:189 get_api_by_name","data":{"code":10,"name":"assert_exception","message":"Assert Exception","stack":[{"context":{"level":"error","file":"api.hpp","line":189,"method":"get_api_by_name","hostname":"","thread_name":"th_a","timestamp":"2016-05-14T07:38:38"},"format":"it->second != nullptr: ","data":{}}]}}} 0 exception: unspecified 10 assert_exception: Assert Exception it->second != nullptr: {} th_a api.hpp:189 get_api_by_name {"error":"10 assert_exception: Assert Exception\nit->second != nullptr: \n {}\n th_a api.hpp:189 get_api_by_name","data":{"id":4,"error":{"code":1,"message":"10 assert_exception: Assert Exception\nit->second != nullptr: \n {}\n th_a api.hpp:189 get_api_by_name","data":{"code":10,"name":"assert_exception","message":"Assert Exception","stack":[{"context":{"level":"error","file":"api.hpp","line":189,"method":"get_api_by_name","hostname":"","thread_name":"th_a","timestamp":"2016-05-14T07:38:38"},"format":"it->second != nullptr: ","data":{}}]}}}} th_a state.cpp:38 handle_reply

I upgrade and it OK now :-)

Note for anyone who found this guide on Google:

PoW Mining was removed from Steemit with hard fork 18. Any guides for mining Steem are thus out of date.

Does this mean there is no way to mine steem now? Or just that these instructions won't work?

There's no way to PoW mine now, it's all PoS witnessing

How do I pos witness? I'm still fairly new just so you know! :)

I have to correct myself, PoDS - Proof of Delegated Stake. That means your "rank" in the witness list is dependent on witness votes from other users. These votes are stake weighted, and stake here is Steem Power. You can find more about these concepts in the FAQs and various links on help area.

Here's two good witness guides that will get you most of the way

You should also join channel #witness and seek advice there.

In terms of server hosting, @someguy123 apparently has a service specifically aimed at witnesses that several use, check out his post on Privex. @l0k1 always says don't use your private keys on a server which you don't control - I agree. Be careful with them.

Good luck!

A good beginner guide!

A few comments:

  1. Perhaps you can mention what are the hardware needed for mining and how much disk space needed.

  2. How do know or check if the blockchain is synced.

the steem blockchain is already at 8xx Mb in size. So best bet is get a 32 or bigger SD card for your RPI or 2 TB hard disks.

If this is supposed to be for dummies, I'd fatten it up with a bit more explanation?

Well there is dumb and dumber, any dumber than this and I would suggest the facebook approach.
Register a steemit account and make some posts, Steemit by design pays a lot more for content than mining.

You might want to add a sudo to the front of all your install options for those who aren't logged in as root while performing the install. Great guide.

Yes. At least here

sudo ./b2 install

I got my miner finally running. I'm using Qubes OS, which doesn't have Ubuntu templates, so I made it in Debian 8.

Had to do a few tricks in addition to this guide:

For Boost:

sudo ./b2 install

Otherwise it doesn't have rights to copy the files.

Before Steem cmake install package pkgconf sudo apt-get install pkgconf then run pkgconf openssl in the terminal. Otherwise cmake doesn't find openssl.

I need to uninstall Boost, because I keep getting this:
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::logic_error> >'

I tried both sudo ./b2 uninstall and sudo ./b2 remove
should I be doing some kind of unmake

wish the site had a way to bookmark or favorite a post so that I can refer to it later when I have time to follow the instructions

If you're using Digital Ocean and you're seeing messages like:

g++: internal compiler error: Killed (program cc1plus)

Here's a simple fix:

sudo dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
sudo mkswap /var/swap.img
sudo swapon /var/swap.img

Trying to build on a Raspberry Pi 3, got to make when:

I have had that error multiple times, I was told it's a linking issue. I am not familiar with raspberry pie, never owned one. But for that error I would suggest to double check your boost installation.
try this instead in boost section:

sudo ./ --prefix=/usr/local
sudo ./b2 install

It does appear to have been the boost install. I probably didn't sudo those in the first attempt.

Update: Nope, I got the same build error, eventually. I'll keep poking at it.
Update: I got it to compile on my Raspberry Pi by adding swap:

sudo dd if=/dev/zero of=/var/swap.img bs=1024k count=2000
sudo mkswap /var/swap.img
sudo swapon /var/swap.img

will not work, they limit free trial to 1 core, which is pretty much a waste of time.

WARNING! This guide doesn't work anymore.
Mining is removed from HF 18.
As @jensm85 commented, please take a look at

I'm leaving this comment because I also spent 3 days to setup a mining machine with this guide and figured out that doesn't work anymore.

excellent beginner guide!

Can We mine running Ubuntu in Windows? Does anyone know how to run Ubuntu in Windows?

Yes. get VM ware. Virtual Box, download Ubuntu

Its working for me - running these steps on Ubuntu 16 running on windows 10 hyper V - yeay!


For how long will POW mining continue?

Typing info in the Cli_wallet will give important information

unlocked >>> info

we look for these two lines

 "head_block_num": xxxxxxx,
 "head_block_age": "xx seconds old",

on a synced wallet head_block_age should be a couple of seconds old.

I have mined STEEM on a few machines including a 6 year old laptop.

I am not sure about hardware requirements, the issue never posed a problem for me and I never asked.

I will try to get that info. or maybe someone who knows can reply here.

As far as POW mining is concerned it will run indefinitely, and reward miners with VESTS.

This gives me a little hope .. thank you. Gonna set this up on my *nix box right now.

Please tell about mining on a few machines. I need to create a new accounts for each machine or may use same config.ini with one witness\miner name?

It says my head block age is 26 days old


STEEM network blocks are produced by 5% computational POW and 95% DPOS-style voting of VESTING stakeholders.

Wow, I was not aware of that. I'm assuming there is no way to mine in Windows just yet, is that correct?

I am sure when windows wallet version is released, it's not hard to include a cpu miner.

All mining is currently done on Linux

You can also mine on Mac OS X as I do.

Everyone should use linux :-)

linux is the best


Can I get some info on how to mine with Mac OS X. There was a post with using some coding from Homebrew - "Mining steem on a Mac" but it doesn't work for me. I'm not such an expert. Maybe I'm doing something wrong. Thanks!

thanks a lot for your tutorial !!!!

Any guide to mine on cloud mining?

Is it possible to mine Steem on Windows PC? If yes, please let me know the link to that article.

Here is a link to @pfunk's guide to mining in Windows using a vm window. I had very good results using this guide.

yes you can mine on windows. here is the windows client:
However, @arhag will update this after Tuesday to 0.8.1 since we have a new fork coming up.

I joined steemit with very little knowledge about cryptocurrency. I knew a bit about bitcoin and had a few dollars in some wallet but I didn't know about mining and still don't but steem is making me inspired to learn more. I am pretty intimidated by the whole prospect. But thanks for this! :)

I restarted steemd with ./steemd --rpc-endpoint but it just syncs and doesn't mine?

I´m confused about the mining wallet.
Can I mine straight to my Steem-account?? Or can I transfer the mined steem to my account?

I am mining in Windows with my CPU. Where do the Steem that i mine go?
I have a file in the folder which name is cli_wallet.
Do the Steems that i mine go to my wallet of

Good question. Where we can check the balance?

There's no public key given to your mining wallet that you can see? Or nothing on your cmd window displaying mined STEEM?

oduce: 429 minutes
2680596ms th_a application.cpp:436 handle_block ] Got 6 transactions from network on block 3176117
2683265ms th_a witness.cpp:430 on_applied_block ] hash rate: 40966 hps target: 30 queue: 105 estimated time to produce: 436 minutes
2683278ms th_a application.cpp:436 handle_block ] Got 4 transactions from network on block 3176118
2686662ms th_a witness.cpp:430 on_applied_block ] hash rate: 41691 hps target: 30 queue: 105 estimated time to produce: 429 minutes
2686674ms th_a application.cpp:436 handle_block ] Got 1 transactions from network on block 3176119
2689550ms th_a witness.cpp:430 on_applied_block ] hash rate: 42470 hps target: 30 queue: 105 estimated time to produce: 421 minutes
2689565ms th_a application.cpp:436 handle_block ] Got 6 transactions from network on block 3176120
2692785ms th_a witness.cpp:430 on_applied_block ] hash rate: 42166 hps target: 30 queue: 105 estimated time to produce: 424 minutes
2692801ms th_a application.cpp:436 handle_block ] Got 2 transactions from network on block 3176121
2695222ms th_a witness.cpp:430 on_applied_block ] hash rate: 41556 hps target: 30 queue: 105 estimated time to produce: 430 minutes
2695237ms th_a application.cpp:436 handle_block ] Got 6 transactions from network on block 3176122
2698160ms th_a witness.cpp:430 on_applied_block ] hash rate: 40942 hps target: 30 queue: 105 estimated time to produce: 437 minutes

Same questions(
Can't find any information(

>>> list_my_accounts will give you balance of all the accounts with keys loaded.
The block will go to the miner account you are using as Steem Power

When I type : ./steemd --rpc-endpoint, I am stuck at 0 block.

215400ms th_a witness.cpp:196 plugin_startup ] witness plugin: plugin_startup() end
215400ms th_a main.cpp:182 main ] Started witness node on a chain with 0 blocks.

Now, I go try open ./cli_wallet, I get :

Logging RPC to file: logs/rpc/rpc.log
2794677ms th_a main.cpp:154 main ] wdata.ws_server: ws://localhost:8090
0 exception: unspecified
Underlying Transport Error
{"message":"Underlying Transport Error"}
asio websocket.cpp:439 operator()

th_a  websocket.cpp:668 connect

I am Debian Jessie, but any idea why? I have no idea how to approach this... and slack is down.

Were you able to figure this out? Having same problem.

did you configure your config.ini ? check the witness and miner section

how i can to mine with 2 pc on 1 wallet on 1pc?

I got through everything then had to restart ubuntu how do I restart the miner?

>>> cd steem/programs/steemd
>>> steemd --replay-blockchain --rpc-endpoint

Hello much thanks for the tutorial. I am syncing right now on my linux machine. How can I tell how much steem I have mined eventually? Thanks again.

check the account wallet on steemit

after all steps got the following:
2892580ms th_a database.cpp:3344 apply_hardfork ] HARDFORK 8
2963709ms ntp ntp.cpp:177 read_loop ] ntp_delta_time updated to -1243 us
how will I know when it stars mining ?
how can I see balances and on what phrase is the process of mining?

did you figure this out? =)

if it freezes at that part restart steemd with --replay-blockchain

is it worth mining steem on a shitty laptop??
can i use the same account for mining and for posting

you can you use same account for both, however, steemd ram requirements are increasing, so not sure a shitty laptop will do anymore, you can try.

very good documentation, clarify lots of stuff for me

Question: When there is a hard fork and we have to update, do we need to re-clone and re-make all, or is there a more efficient way?

Answer: It looks like this is the only way, here is a post to help speed things up though

>>> cd steem
>>> git pull;git submodule update; make

Hi Joseph! can you update this guide or make new one?
I need guide for dummie to mine steem on VPS

there is already a guide to mine on VPS.
not sure mining on VPS is still profitable though.

I would just like to thank @joseph for all the hard work he put into making this guide as simple as possible. Truly, I really appreciate it.

I had attempted to use @pfunk's guide to installing Steemd on windows, but I always had issues. I ditched it, picked up a HDD, installed Ubuntu, plugged in the Sata cables and started off this guide. Now, my steem POW miner is currently syncing with the blockchain, and truly...

I appreciate the effort put into this post.


you are welcome Sir.

seed-node is really important, and lots of other document list dead seed-node!! below is what I am using:
seed-node =
seed-node =
seed-node =
seed-node =
seed-node =
seed-node =
seed-node =

nevermind smooth helped me.

If you need help with Windows mining, check out this topic ...

or visit the mining slack channel ...

I'm getting 3k hps and I've been running for about 48 hours and no block. I'm I doing something wrong will there be a pool maybe?

STEEM does not favor pool mining because of the need of your private key.
I have an old laptop that mines STEEM on 1 core and provides less than 1k hps,
I do get a block every other day, sometimes longer. On my 8 core cpu I use only 4 cores
with 20k hps and get a few blocks a day. The 20k hps generates about 2.0 to 3.0 Steem a day
on average, but since it's in steem power it also starts generating more steem daily just by holding it.
Steem is really promising in the fact it's a first of it's kind social media network based on the blockchain.
If one day Steemit gets 5% of twitter or facebook reach, you will be in a great shape holding the steem power you mined.

Thanks Joseph. I had a block show up overnight.

I'm Dying to try this .. i'm starting my Ubuntu download now!

Thanks for this guide. But if i have more than one mining rigs is it safe to use exactly the same config in each of these? I read somewhere that i must use ONLY one witness name! is that valid?

use different miners / witnessess on each machine

The config.ini file indicates that this is required, but I didn't see it mentioned in the instructions:

# RPC endpoint of a trusted validating node (required)
# trusted-node = 

not required, just fill the parts mentioned in the guide.

Hi, good morning... two days running steemd......
1338525ms th_a witness.cpp:426 on_applied_block ] hash rate: 18065 hps target: 30 queue: 106 estimated time to produce: 990 minutes
1338526ms th_a application.cpp:439 handle_block ] Got 5 transactions from network on block 3504327

17-18 Khps and normal ? I thinking go back with monero (XMR) :(

i got my first POW in like 3 hours with like 16khps ... i think i got lucky as hell tho.

48 hours, and nothing :( I don't like it ....

mmm I'm checking, and i see this....
Mining Information
POW blocks that the watched accounts have found.
Account Activity
a day ago Found a block

But can't see in my cli wallet, somebody knows why?

You mean you can't see the history of getting the POW reward? it doesnt show in your wallett history, i dont think...

i think it just gives you the SP reward... for example that one above is my miner. no history in his wallett

steemd shows mining rewards

One more question... my hashrate is pretty steady around 15khps, but the estimated time to produce seems to vary wildly... from 600 minutes all the way up to 5000... is this normal... how many pow do you expect per day per khps

that's normal to vary, look at pow found average over three days on

I followed all your instructions and set up a miner on Digital Ocean. It worked perfectly after I allocated more memory to the droplet. I appreciate the effort you made to put together this guide. I wrote a post about my experience here

you are welcome Sir.

Thanks for the procedure.
It started working to download the blockchain fine, but at the end it aborts with:
1006431ms th_a main.cpp:182 main ] Started witness node on a chain with 3350236 blocks.
Floating point exception

What could be the problem?

Have not seen that error before. Double check your config, and if you can not find anything wrong. head to slack #mining channel, see if someone can help with that error.

The problem was due to very few resources. I added more cpu and ram to VPS and problem went away.
Lesson learned: Use a dedicated server with LOTS of CPU power and RAM if you want to effectively mine Steem.

Thank you for this. After struggling with the instructions on STEEM.IO, I finally stumbled upon this. Worked flawlessly with Ubuntu 16.04.


when entering this line
tar xzvf boost_1_60_0.tar.gz
gzip: stdin: not in gzip format
tar: child returned status 1
tar: Error is not recoverable: exiting now
running on Ubuntu ( last version)
What should I do wrong?

Something wrong with the link/sourceforge in the previous step, the file is meant to be 75-85MB big not 200k. Google for " boost_1_60_0.tar.gz " and download it from a mirror and place in the same folder as the guide expects it.

thanks. I downloaded again. Now, everything fine.

Same issue, apparently sourceforge was down for a while, but all is well now!

Hi..I've a question
I found 3 blocks
about 14 hours ago Found a block
a day ago Found a block
3 days ago Found a block

And i can see in my wallet u$s 0.021 steem dollars.
This is all for 4 days @ 18-19 Khps ?
Really guys is a shit....I'm returning to monero....

I've created a docker build based on these steps
Seems to be working a treat. Added an ssh server to the docker container so that you can ssh in to config/monitor. No documentation yet, that's to follow soon.

FYI don't forget to change the public key if you try it!

And here's the prebuilt docker container on docker hub:

[email protected]:~$ cd secp256k1
[email protected]:~/secp256k1$ ./
./ 3: ./ autoreconf: not found
[email protected]:~/secp256k1$ ./configure
bash: ./configure: No such file or directory
[email protected]:~/secp256k1$ make
make: *** No targets specified and no makefile found. Stop.
[email protected]:~/secp256k1$ ./
./ 3: ./ autoreconf: not found
[email protected]:~/secp256k1$
[email protected]:~/secp256k1$ ./
./ 3: ./ autoreconf: not found

Getting errors.... now what?

if you get an error while following this guide please stop, and go to

once you are on STEEM slack join room #help

you can try this:

> cd
> rm -rf  secp256k1
> git clone
> cd secp256k1
> ./
> ./configure
> make
> ./tests

then continue with the rest. if you still get errors come to slack.

Can I tell you something? I did NOT make the comment that you are responding to.

Maybe a little late to help you, but for others with similar issues, if you get a "xxx: not found" error, it usually means the xxx is missing. In this case, try allso installing autoconf (the autoconf manual states autoreconf runs autoconf). In Maybe this works:

sudo apt-get install autoconf

Can I tell you something? I did NOT make the comment that you are responding to.

Awesome post. Thank you for this. Got me up and running really quickly.

This has been an awesome reference for me...(So, First thank you Joseph.) But... Boost C++ has updated from 1_60_0 to 1_61_0. and possibly some other changes... Would you mind if I re-posted this organized the way I see fit?

Yes, please do. I am glad you are interested in doing so.

Worked like a charm! The mining didn't work though, but wallet was working at least .. any plans on doing more of these? I switched from windows and finding a lot of this crazy hard, but the more I do it, the easier It becomes .. I want a guide for .. help me and yourself out lol .. cheers

what resources I will need on VPS ?

CPU!!! lots of it, i am running mine on UBUNTU 15 dual xenon. Not sure a vps will return much if its not a decent chunk of the resources available.

Ok so the install of ./b2 took forever, kept seeing the word "failed" as it scrolled by.
When it finally finished it gave me this output

...failed common.copy /usr/local/lib/libboost_test_exec_monitor.a...
...failed updating 67 targets...
...skipped 11973 targets...
...updated 1054 targets...

This normal? Running version 14.04

Also failed at CMAKE

Configuring incomplete, errors occurred!

Checked the CMakeOutput.log

Can't make a whole lot of sense of it but I understand the general idea of what it is doing. But I was unable to find an obvious error signals

In the log it appears that the program just stopped without reporting a specific error

try this
sudo ./b2 install

I'm still getting the error at CMAKE

Hey I got it figured out, Thanks!. One more question though

this is a good time to load YOUR key in your cli_wallet terminal window like this:

which key are you talking about here? I have lots of different keys

During cli_wallet terminal when you say "PASSWORD". Do you mean we should select our own password like xxx or simple write "PASSWORD"

choose your own password. Do not make it so simple.

great guide but i got a problem with starting a new cli_wallet.

Logging RPC to file: logs/rpc/rpc.log
Starting a new wallet
131415ms th_a main.cpp:154 main ] wdata.ws_server: ws://localhost:8090
0 exception: unspecified
Timer Expired
{"message":"Timer Expired"}
asio websocket.cpp:444 operator()
th_a websocket.cpp:673 connect

Any solution for this?

This error has been bugging me also on newer servers and could never find my way around it but just simply accepting it and using an older machine for cli_wallet related stuff. But today i think i finally found the solution.

fix: update this file:

Will be fixed in websocket++ 0.8 which hopefully gets included in Steem.

Github Discussion to learn more:

I did a manual change to the file mentioned above and then it works. You will need to cmake / make again.

Apparently this is caused by a 'change' in Linux Kernel > 4.4 so first check with uname -r that you are indeed running a node with kernel > 4.4

i get these error messages:

1985208ms th_a witness.cpp:189 plugin_startup ] No witnesses configured! Please add witness names and private keys to configuration.
1985208ms th_a witness.cpp:197 plugin_startup ] No miners configured! Please add miner names and private keys to configuration.
1985209ms th_a witness.cpp:199 plugin_startup ] witness plugin: plugin_startup() end
1985209ms th_a main.cpp:182 main ] Started witness node on a chain with 1331512 blocks.

what have i done wrong?

Looks like you got the network running but did you create a cli_wallet and edited the config file?

what do i have to setup exactly? i run suggest_brain_key and got a block of data and i have my wif key when signing at at ? i have witness = "martinh"and miner = ["martinh","key from signup at steemit is that correct? do i have to set up more?

Did you edit the P2P nodes and the number of threads like mentioned above and saved the config file?

Hi there All,

I followed this tuto ..and it all works well....until I get to the last bit to make of compile steemd which point my extremely low memory machine can not allocate memory to finish the compilation .... could any one that has built this object in Ubunto be kind to email it to me?
Steemd and cli_wallet ?

you can do so to : [email protected]

Many thanks!

Hey Joseph,
Thank for the guide it works awesomely well !!

Just a question...what happend if you don't definre the number of threads? what would then be the default ?

Many thanks!


Hello, thanks for the work,

I have downloaded and installed everything, but after compilation, and launching, nothing really seems to happen.
So, if you could help me I would greatly appreciate with these 3 questions :

  1. does the "withness" name described above needs to be the same than my steemit account ? Or does it need to be dissociated from my steemit account ??
  2. Is there a way to check if steemd actually does something ? In my case, i have started the daemon and nothing seems to happen, with no output at all....
  3. the method described above shows some P2P nodes adresses and ips. Do they need to be entered in the .ini file or is it just some kind of output from the steem daemon.

In my case, here is my output at launch :
PORT-CM steemd # ./steemd --rpc-endpoint

        STARTING STEEM NETWORK                                                                           

initminer public key: STM8GC13uCZbP44HzMLV6zPZGwVQ8Nt4Kji8PapsPiNq1BK153XTX
chain id: 0000000000000000000000000000000000000000000000000000000000000000
blockchain version: 0.18.2

1741503ms th_a witness.cpp:90 plugin_initialize ] _witnesses: ["tofm2"]

and then nothing.

Thanks for your help.

I was having the issue where it would crash the terminal and give a bash json log for incorrect characters. Usually you can't put quotes in but you will need to put them in and remove the '#' symbol. And the username/witness would be your steemit username in lowercase like mine says @grim-jester.

Running Tahrpup (so, forked from Ubuntu Tahr) on a 32-bit machine, I gave up on the initial batch install and used the package manager to install all the individual packages (which were all in the repos, and all installed), but Boost will not build properly (./ won't run).
Any ideas why sys/types.h, stddef.h and stdlib.h files aren't created?

I can't answer your specific question, but FYI mining was removed from Steem with Hard Fork 18. Thus all mining guides are out of date and there is no way to get mining working.

After got through all of the steps I got the following lines:
3218891ms th_a database.cpp:3315 apply_hardfork ] HARDFORK 3
177178ms th_a database.cpp:3321 apply_hardfork ] HARDFORK 4

What should I do after this?
How can I start mining? Or this process will start automatically ?
Where can I see how mining is going on?

you are not done syncing, when done it should start mining.

I am working on downloading Ubuntu now and hopefully have the client wallet and steem blockchain downloaded tonight! :D I will probably be aking a lot of questions so be prepared.

You can not mine steem anymore This post is a year old.

Wait whaaaa!? lol That's what I was thinking until I came across the mining tutorial... Thanks for the heads up

hey there,
i have a mac, so how do i set it up?

You can not mine steem anymore do not bother. This post is a year old.

Totally impossible?

Any updates? current wallets do not work most of the fuctions...

I took me a week or two... to figure out mining is not possible anymore.
i took me an additional half a day today to install linux on a spare machine and then finally to figure out mining isnt available anymore. see the FAQ.

Hi Joseph, is there any updated guide available? For ubuntu 16.04 LTS server

When I am trying to mine I am getting this message in the last line - "Started witness node on a chain with 0 blocks." Can someone help me out what am I doing wrong?

I started my miner and it's running at 1hps. I assume based on the comments that it needs sync. My wallet is not seeing my account. Does it need to completely sync before seeing my account?
unlocked >>> list_my_accounts
2398197ms th_a websocket_api.cpp:88 on_message ] message: {"id":5,"result":[]}

TOTAL 0.000 STEEM 0.000000 VESTS 0.000 SBD

your account is created when you mine your first block, however, since you already have an account on steemit, you can use the private key for this account to also mine with. you can find your private key in the permissions link on top right of steemeit website under your account icon.

When I go to permissions I see public keys but no private key. I see PUBLIC POSTING KEY, PUBLIC ACTIVE KEY, PUBLIC OWNER KEY, and PUBLIC MEMO KEY.

Click show on the right of the public keys to show private keys. Use the active private key to mine

Warning! mining is not possible anymore.
Save your time.

Can I mine STEEM?
No. Proof of work mining has been removed from Steem.

@joseph golly good documentation ! thanks

In my opinion there is a bit of unclearity if this methode still works. Can anyone confirm if this guide will still work or if there is a link to a guide that does work on Ubuntu? And if it does not, how do you reverse the command: "sudo apt-get install git cmake g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev libboost-all-dev libssl-dev libncurses5-dev doxygen libreadline-dev dh-autoreconf"?

Cloud mining all the way for me. These are the sites I use!
All Free Gh/s.
Eobot - - Daily free faucet!! Number One & Most Trusted
Fleex - - 100Gh/s
Rapid - - 100 Gh/s
CryptoS - - 20Gh/s
MinerClub - - 15 Kh/s
Nano - - 15 Khs
Elite - - 5000 DogeCoin to start investing.
Demix - - 5 Gh/s
DogeMine - - 20 Kh/s
I do not recommend you invest $$$ except in Eobot, more your time,
in and internally generated Gigahashes
Then cash out when you like the day returns!
Then send it over to Eobot to boost my account their.
Please use the links so i can gain a small amount of Gh/s for your referral.
Happy Mining.