Three bitcoin clients are used for InterOperability testing
-
Enter the following command for cashInterop project, which has submodules in it. Replace username with your github username
$ git clone https://github.com/username/cashInterop.git
-
Change directory to cashInterop, and enter the following command to initialize and fetch the submodules
$ git submodule update --init --recursive
Make sure all package dependencies are installed (see Quick installation instructions section in BitcoinUnlimited).
Both BU and XT may fail to build because of missing package dependencies of libgoogle-perftools-dev, and libcurl4-openssl-dev respectively.
-
Since --enable-gperf is enabled in the Makefile for BU, install dependency by
$ sudo apt-get install libgoogle-perftools-dev
-
Build requirements for XT
$ sudo apt-get install libcurl4-openssl-dev
-
Building individual client (i.e. bu, xt or abc)
$ make bu $ make xt $ make abc
-
Building all three clients
$ make all
-
Verify client executables (bitcoind and bitcoin-cli) are built successfully within debug folder
$ ls -la bucash/debug/src/bitcoin* $ ls -la xt/debug/src/bitcoin* $ ls -la abc/debug/src/bitcoin*
-
All available tests are located in the test folder. Default folder location for storing bitcoin data and log files is set to /tmp/cashInterop
-
You can overwrite this location by using option --tmpdir=<folder_location>. Please note that no space is allowed before and after the equal sign. Second example below creates folder "testlogs" in the same place as the script.
$ ./example_test.py --tmpdir=/tmp/logfolder $ ./example_test.py --tmpdir=testlogs