CentOS 7 user. That means system python is 2.7.5
That wasn't a problem with bitcoin 0.12.x
With bitcoin 0.13.0 it isn't a problem with building but it is a problem with make qa/pull-tester/rpc-tests.py
It wants python3 - I build in mock and python3 is in EPEL so I added python34 to the BuildRequires
Now when building it can find python3 but -
+ pushd src
~/build/BUILD/bitcoin-0.13.0/src ~/build/BUILD/bitcoin-0.13.0
+ srcdir=.
+ test/bitcoin-util-test.py
+ popd
+ qa/pull-tester/rpc-tests.py -extended
~/build/BUILD/bitcoin-0.13.0
Traceback (most recent call last):
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/test_framework/test_framework.py", line 144, in main
self.setup_chain()
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/test_framework/test_framework.py", line 51, in setup_chain
initialize_chain(self.options.tmpdir, self.num_nodes)
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/test_framework/util.py", line 218, in initialize_chain
datadir=initialize_datadir("cache", i)
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/test_framework/util.py", line 162, in initialize_datadir
f.write("rpcuser=" + rpc_u + "\n")
UnicodeEncodeError: 'ascii' codec can't encode character '\U0001f4bb' in position 15: ordinal not in range(128)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/create_cache.py", line 23, in <module>
CreateCache().main()
File "/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/test_framework/test_framework.py", line 162, in main
print("Unexpected exception caught during testing: " + repr(e))
UnicodeEncodeError: 'ascii' codec can't encode character '\U0001f4bb' in position 88: ordinal not in range(128)
Traceback (most recent call last):
File "qa/pull-tester/rpc-tests.py", line 341, in <module>
runtests()
File "qa/pull-tester/rpc-tests.py", line 200, in runtests
subprocess.check_output([RPC_TESTS_DIR + 'create_cache.py'] + flags)
File "/usr/lib64/python3.4/subprocess.py", line 620, in check_output
raise CalledProcessError(retcode, process.args, output=output)
subprocess.CalledProcessError: Command '['/builddir/build/BUILD/bitcoin-0.13.0/qa/rpc-tests/create_cache.py', '--srcdir=/builddir/build/BUILD/bitcoin-0.13.0/src']' returned non-zero exit status 1
I'm guessing there is some python module I'm missing but its not an import error, so I don't know.
I'm not a python guru but I thought one of the reasons Python3 was suppose to be so great is because UnicodeEncodeError would be a thing of the past. Ah well.
Anyone know what I might be missing?
Right now the chroot buildroot environment *just* has python34 (Python 3.4), probably not what most people coding pythons scripts expect.
Any suggestions appreciated, especially suggestions that work.