Bitcoin Core 0.13.1, blockchain completely synched, Armory 0.95.1 fresh installation, Ubuntu 16.10.
Just a little glitch:
if I execute only ArmoryDB, it fails because /home/antonio/.armory doesn't exist and it gets stuck on this error:
antonio@ubuntu:~$ ls .armory
ls: impossibile accedere a '.armory': File o directory non esistente
antonio@ubuntu:~$ /usr/bin/ArmoryDB
/home/antonio
/home/antonio/.armory is not a valid path
logging in /home/antonio/.armory/dbLog.txt
-INFO - 1483277052: (main.cpp:23) Running on 1 threads
-INFO - 1483277052: (main.cpp:24) Ram usage level: 4
antonio@ubuntu:~$ ls .armory
ls: impossibile accedere a '.armory': File o directory non esistente
"logging in /home/antonio/.armory/dbLog.txt" is then a false message.
If I manually create only the .armory directory (not the databases subdirectory), then is ok:
antonio@ubuntu:~$ mkdir .armory/
antonio@ubuntu:~$ ls .armory/
antonio@ubuntu:~$ /usr/bin/ArmoryDB
/home/antonio
/home/antonio/.armory/databases is not a valid path
logging in /home/antonio/.armory/dbLog.txt
-INFO - 1483277785: (main.cpp:23) Running on 1 threads
-INFO - 1483277785: (main.cpp:24) Ram usage level: 4
-INFO - 1483277785: (BlockUtils.cpp:1338) blkfile dir: /home/antonio/.bitcoin/blocks
-INFO - 1483277785: (BlockUtils.cpp:1339) lmdb dir: /home/antonio/.armory/databases
-INFO - 1483277785: (lmdb_wrapper.cpp:388) Opening databases...
-INFO - 1483277785: (BlockUtils.cpp:1521) Executing: doInitialSyncOnLoad
-INFO - 1483277785: (DatabaseBuilder.cpp:169) Reading headers from db
-WARN - 1483277785: (lmdb_wrapper.cpp:1175) No headers in DB yet!
-INFO - 1483277785: (DatabaseBuilder.cpp:208) Found 1 headers in db
-INFO - 1483277785: (DatabaseBuilder.cpp:51) updating HEADERS db
-INFO - 1483277792: (DatabaseBuilder.cpp:268) parsed block file #0
-INFO - 1483277796: (DatabaseBuilder.cpp:268) parsed block file #1
-INFO - 1483277801: (DatabaseBuilder.cpp:268) parsed block file #2
-INFO - 1483277804: (DatabaseBuilder.cpp:268) parsed block file #3
-INFO - 1483277808: (DatabaseBuilder.cpp:268) parsed block file #4
-INFO - 1483277812: (DatabaseBuilder.cpp:268) parsed block file #5
-INFO - 1483277815: (DatabaseBuilder.cpp:268) parsed block file #6
-INFO - 1483277819: (DatabaseBuilder.cpp:268) parsed block file #7
.....
-INFO - 1483284971: (DatabaseBuilder.cpp:268) parsed block file #726
-DEBUG - 1483284972: (Blockchain.cpp:242) Organizing chain
-INFO - 1483284982: (DatabaseBuilder.cpp:56) updated HEADERS db in 7197s
-INFO - 1483284982: (BlockUtils.cpp:1636) Enabling zero-conf tracking
antonio@ubuntu:~$ ls .armory/
databases dbLog.txt
The warning "/home/antonio/.armory/databases is not a valid path" in this case is only a warning, and Armory resolves the issue by itself.
Question #1: is it ok to terminate ArmoryDB with "CTRL + C" ? I didn't figure out another way.
Question #2: now if I execute /usr/bin/armory (after quitting ArmoryDB and Bitcoin Core), I get:
File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
2017-01-01 17:20 (ERROR) -- SDM.py:791 - ValueError in bkgd req top blk
Traceback (most recent call last):
File "/usr/lib/armory/SDM.py", line 765, in __backgroundRequestTopBlock
numblks = self.proxy.getinfo()['blocks']
File "/usr/lib/armory/bitcoinrpc_jsonrpc/authproxy.py", line 105, in __call__
resp = json.loads(resp, parse_float=decimal.Decimal)
File "/usr/lib/python2.7/json/__init__.py", line 352, in loads
return cls(encoding=encoding, **kw).decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
and the program gets stuck.
I need instead to use the three commands:
- /usr/bin/local/bitcoind --daemon
- /usr/bin/ArmoryDB
- python2 /usr/lib/armory/ArmoryQt.py
to make Armory work. Why?