From 55da98cee9875085dae7c28f6bc0b0cdd32a3bd0 Mon Sep 17 00:00:00 2001 From: Jethro Grassie Date: Mon, 1 Apr 2019 18:10:48 -0400 Subject: [PATCH] update readme and todo to reflect new build system --- Makefile | 2 +- README.md | 36 +++++++++++++++++++++--------------- TODO | 9 ++++----- 3 files changed, 26 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index f924c6f..acfcd50 100644 --- a/Makefile +++ b/Makefile @@ -55,7 +55,7 @@ endif LDPARAM += $(LDFLAGS) -LIBS := lmdb pthread microhttpd sodium +LIBS := lmdb pthread microhttpd ifeq ($(OS), Darwin) LIBS += c++ boost_system-mt boost_date_time-mt boost_chrono-mt boost_filesystem-mt boost_thread-mt else diff --git a/README.md b/README.md index cda9b7a..2779b14 100644 --- a/README.md +++ b/README.md @@ -31,35 +31,38 @@ shout on IRC: jtgrassie on Freenode. ### Dependencies +The build system now requires the Monero source tree to be cloned and compiled. +Follow the +[instructions](https://github.com/monero-project/monero#compiling-monero-from-source) +for compiling Monero, then export the following variables: + +```bash +export MONERO_ROOT=/path/to/cloned/monero +export MONERO_BUILD_ROOT=$MONERO_ROOT/build/// +``` + +Replacing the values appropriately. + +Beyond the Monero dependencies, the following libraries are also required to +build the pool: + - liblmdb - libevent - json-c -- boost - openssl - libmicrohttpd - uuid -- libsodium -As an example, on Ubuntu, the dependencies can be installed with the following +As an example, on Ubuntu, these dependencies can be installed with the following command: ``` sudo apt-get install libjson-c-dev uuid-dev libevent-dev libmicrohttpd-dev \ - liblmdb-dev libboost-all-dev openssl libsodium-dev + liblmdb-dev openssl ``` - -There may also be other [Monero -dependencies](https://github.com/monero-project/monero#dependencies) needed, so -it doesn't hurt to install those too. - -Another obvious dependency is to have a running Monero daemon (`monerod`) and a -running wallet RPC (`monero-wallet-rpc`) for the pool wallet. It is highly -recommended to run these on the same host as the pool server to avoid network -latency when their RPC methods are called. - ### Compile -First install all the dependencies. +First install all the dependencies as described above. Then to compile the pool as a release build, run: @@ -90,6 +93,9 @@ Ensure you have your Monero daemon (`monerod`) and wallet RPC (`monero-wallet-rpc`) up and running with the correct host and port settings as defined in the pool config file. +It is highly recommended to run these on the same host as the pool server to +avoid network latency when their RPC methods are called. + Then simply `cd build/debug|release` and run `./monero-pool`. ## Web UI diff --git a/TODO b/TODO index dcb0760..65f43e8 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,8 @@ Things to work on: - - Improve the build system (ignore missing definitions of Monero objects, it's - just noise) - Add protection against invalid share flooding - - Offload payout processing to a separate thread (maybe not needed, test) - - Offload RPC requests to a separate thread (maybe not needed, test) - - Add daemonizing option (for those too lazy to nohup or use tmux) + - Offload payout processing to a separate thread (appears not needed, test + more) + - Offload RPC requests to a separate thread (appears not needed, test more) + - Add daemonizing option (for those too lazy to nohup or use tmux/screen) [//]: # ( vim: set tw=80: )