diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2014-05-23 18:03:34 +0200 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2014-05-23 18:04:17 +0200 |
commit | 206662003dc8eadf08bd809ab5e99aa340e93802 (patch) | |
tree | 6e0ebc4665aab42166f3cae5c92be0c0e2c3e7b3 | |
parent | a8a0db6f210c879396417d4eace8b188ca9a199a (diff) | |
parent | c47f5379bd25195d1e08638294f9ffbb5b1df0a8 (diff) |
Merge pull request #4220
c47f537 Add Tips and Tricks section to README (Gavin Andresen)
-rw-r--r-- | README.md | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -81,3 +81,38 @@ Periodically the translations are pulled from Transifex and merged into the git **Important**: We do not accept translation changes as github pull request because the next pull from Transifex would automatically overwrite them again. + +Development tips and tricks +--------------------------- + +**compiling for debugging** + +Run configure with the --enable-debug option, then make. Or run configure with +CXXFLAGS="-g -ggdb -O0" or whatever debug flags you need. + +**debug.log** + +If the code is behaving strangely, take a look in the debug.log file in the data directory; +error and debugging message are written there. + +The -debug=... command-line option controls debugging; running with just -debug will turn +on all categories (and give you a very large debug.log file). + +The Qt code routes qDebug() output to debug.log under category "qt": run with -debug=qt +to see it. + +**testnet and regtest modes** + +Run with the -testnet option to run with "play bitcoins" on the test network, if you +are testing multi-machine code that needs to operate across the internet. + +If you are testing something that can run on one machine, run with the -regtest option. +In regression test mode blocks can be created on-demand; see qa/rpc-tests/ for tests +that run in -regest mode. + +**DEBUG_LOCKORDER** + +Bitcoin Core is a multithreaded application, and deadlocks or other multithreading bugs +can be very difficult to track down. Compiling with -DDEBUG_LOCKORDER (configure +CXXFLAGS="-DDEBUG_LOCKORDER -g") inserts run-time checks to keep track of what locks +are held, and adds warning to the debug.log file if inconsistencies are detected. |