Solo mining is fairly trivial. Note that you have to be fully synced in order to do so. If you are starting from scratch, download the official binaries from here. Subsequently, extract them to a given folder and start
monerod. This is the daemon which will now start syncing. To check your blockheight type
monerod. The blockheight should be equal to the blockheight reported on MoneroBlocks in order to be fully synced.
Now that you are fully synced, you can start solo mining. To do so you have to type
start_mining <address> [<number-of-threads>] into the daemon. Thus, if you want to solo mine to, for instance, the donation address of the core-team with 2 threads the command would be as follows:
start_mining 44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A 2
Note that the optimal number of threads is one per 2 MB of CPU cache. Thus, if you have 4 MB of CPU cache available the optimal number of threads would be 2.
There is also an alternative method, which is to enter the
start_mining command into
monero-wallet-cli. You won't have to specify an address then, because it will use the address of the wallet that is opened at that moment. However, you will be able to specify the number of thredas.