How to install the HTMLCOIN wallet in linux
OS: Ubuntu 16/17
리눅스에서 HTML Coin Wallet(지갑) 설치를 해보았다.
Wallet 설치 명령어와 결과는 아래와 같다.
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo apt-get update
Hit:1 http://kr.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://kr.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:3 http://kr.archive.ubuntu.com/ubuntu xenial-backports InRelease
Hit:4 http://security.ubuntu.com/ubuntu xenial-security InRelease
Reading package lists... Done
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git cmake libboost-all-dev
[sudo] password for lucifer:
Reading package lists... Done
Building dependency tree
Reading state information... Done
automake is already the newest version (1:1.15-4ubuntu1).
autotools-dev is already the newest version (20150820.1).
bsdmainutils is already the newest version (9.0.6ubuntu3).
build-essential is already the newest version (12.1ubuntu2).
libtool is already the newest version (2.4.6-0.1).
pkg-config is already the newest version (0.29.1-0ubuntu1).
libboost-all-dev is already the newest version (1.58.0.1ubuntu1).
cmake is already the newest version (3.5.1-1ubuntu3).
git is already the newest version (1:2.7.4-0ubuntu1.3).
libevent-dev is already the newest version (2.0.21-stable-2ubuntu0.16.04.1).
libssl-dev is already the newest version (1.0.2g-1ubuntu4.10).
0 upgraded, 0 newly installed, 0 to remove and 93 not upgraded.
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo apt-get install software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
software-properties-common is already the newest version (0.96.20.7).
0 upgraded, 0 newly installed, 0 to remove and 93 not upgraded.
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo add-apt-repository ppa:bitcoin/bitcoin
Stable Channel of bitcoin-qt and bitcoind for Ubuntu, and their dependencies
Note that you should prefer to use the official binaries, where possible, to limit trust in Launchpad/the PPA owner.
No longer supports precise, due to its ancient gcc and Boost versions.
More info: https://launchpad.net/~bitcoin/+archive/ubuntu/bitcoin
Press [ENTER] to continue or ctrl-c to cancel adding it
gpg: keyring `/tmp/tmpq_kgf_zc/secring.gpg' created
gpg: keyring `/tmp/tmpq_kgf_zc/pubring.gpg' created
gpg: requesting key 8842CE5E from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpq_kgf_zc/trustdb.gpg: trustdb created
gpg: key 8842CE5E: public key "Launchpad PPA for Bitcoin" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo apt-get update
Hit:1 http://kr.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://kr.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:3 http://kr.archive.ubuntu.com/ubuntu xenial-backports InRelease
Hit:4 http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu xenial InRelease
Hit:5 http://security.ubuntu.com/ubuntu xenial-security InRelease
Reading package lists... Done
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ sudo apt-get install libdb4.8-dev libdb4.8++-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libdb4.8-dev is already the newest version (4.8.30-xenial4).
libdb4.8++-dev is already the newest version (4.8.30-xenial4).
0 upgraded, 0 newly installed, 0 to remove and 93 not upgraded.
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ git clone https://github.com/HTMLCOIN/HTMLCOIN --recursive
Cloning into 'HTMLCOIN'...
remote: Counting objects: 83692, done.
remote: Compressing objects: 100% (115/115), done.
remote: Total 83692 (delta 42), reused 60 (delta 33), pack-reused 83543
Receiving objects: 100% (83692/83692), 72.45 MiB | 681.00 KiB/s, done.
Resolving deltas: 100% (62834/62834), done.
Checking connectivity... done.
Submodule 'src/cpp-ethereum' (https://github.com/HTMLCOIN/cpp-ethereum.git) registered for path 'src/cpp-ethereum'
Cloning into 'src/cpp-ethereum'...
remote: Counting objects: 114788, done.
remote: Total 114788 (delta 0), reused 0 (delta 0), pack-reused 114788
Receiving objects: 100% (114788/114788), 49.25 MiB | 819.00 KiB/s, done.
Resolving deltas: 100% (73850/73850), done.
Checking connectivity... done.
Submodule path 'src/cpp-ethereum': checked out '488ccdc7cef0a0b4fa54c88b7e44e43ed8316ea7'
Submodule 'evmjit' (https://github.com/ethereum/evmjit) registered for path 'evmjit'
Cloning into 'evmjit'...
remote: Counting objects: 6808, done.
remote: Total 6808 (delta 0), reused 0 (delta 0), pack-reused 6808
Receiving objects: 100% (6808/6808), 2.00 MiB | 669.00 KiB/s, done.
Resolving deltas: 100% (4412/4412), done.
Checking connectivity... done.
Submodule path 'src/cpp-ethereum/evmjit': checked out '81fc5be25987020f498ea0100a7fb9055c08b84f'
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ cd HTMLCOIN
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ ./autogen.sh
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
libtoolize: copying file 'build-aux/m4/libtool.m4'
...
CC = gcc
CFLAGS = -g -O2
CPPFLAGS = -DQTUM_BUILD -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS
CXX = g++ -std=c++11
CXXFLAGS = -g -O2 -Wall -Wextra -Wformat -Wvla -Wformat-security -Wno-unused-parameter -Wno-unknown-pragmas
LDFLAGS =
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ make -j2
Making all in src
make[1]: Entering directory '/home/lucifer/HTMLCOIN/src'
make[2]: Entering directory '/home/lucifer/HTMLCOIN/src'
CXX libbitcoinconsensus_la-arith_uint256.lo
CXX libbitcoinconsensus_la-hash.lo
CXX libbitcoinconsensus_la-pubkey.lo
CXX libbitcoinconsensus_la-uint256.lo
CXX libbitcoinconsensus_la-utilstrencodings.lo
make[3]: Entering directory '/home/lucifer/HTMLCOIN/src/secp256k1'
gcc -I. -g -O2 -Wall -Wextra -Wno-unused-function -c src/gen_context.c -o gen_context.o
gcc gen_context.o -o gen_context
CC src/java/libsecp256k1_jni_la-org_bitcoin_NativeSecp256k1.lo
CC src/java/libsecp256k1_jni_la-org_bitcoin_Secp256k1Context.lo
./gen_context
...
Making all in doc/man
make[1]: Entering directory '/home/lucifer/HTMLCOIN/doc/man'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/lucifer/HTMLCOIN/doc/man'
make[1]: Entering directory '/home/lucifer/HTMLCOIN'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/home/lucifer/HTMLCOIN'
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
아래와 같이 오류가 나는경우
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'build-aux/m4'.
libtoolize: copying file 'build-aux/m4/libtool.m4'
libtoolize: copying file 'build-aux/m4/ltoptions.m4'
libtoolize: copying file 'build-aux/m4/ltsugar.m4'
...
configure.ac:22: installing 'build-aux/config.guess'
configure.ac:22: installing 'build-aux/config.sub'
configure.ac:32: installing 'build-aux/install-sh'
configure.ac:32: installing 'build-aux/missing'
Makefile.am:12: warning: user variable 'GZIP_ENV' defined here ...
/usr/share/automake-1.15/am/distdir.am: ... overrides Automake variable 'GZIP_ENV' defined here
src/Makefile.am: installing 'build-aux/depcomp'
src/Makefile.am:709: warning: user target '.mm.o' defined here ...
/usr/share/automake-1.15/am/depend2.am: ... overrides Automake target '.mm.o' defined here
parallel-tests: installing 'build-aux/test-driver'
lucifer@1004lucifer:~/HTMLCOIN#
lucifer@1004lucifer:~/HTMLCOIN#
lucifer@1004lucifer:~/HTMLCOIN#
lucifer@1004lucifer:~/HTMLCOIN# make -j2
make: *** No targets specified and no makefile found. Stop.
lucifer@1004lucifer:~/HTMLCOIN#
아래와 같이 ./autogen.sh 명령어 대신 ./configure 명령어를 이용한다.
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
...
CC = gcc
CFLAGS = -g -O2
CPPFLAGS = -DQTUM_BUILD -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS
CXX = g++ -std=c++11
CXXFLAGS = -g -O2 -Wall -Wextra -Wformat -Wvla -Wformat-security -Wno-unused-parameter -Wno-unknown-pragmas
LDFLAGS =
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ make -j2
Making all in src
make[1]: Entering directory '/home/lucifer/HTMLCOIN/src'
make[2]: Entering directory '/home/lucifer/HTMLCOIN/src'
CXX libbitcoinconsensus_la-arith_uint256.lo
CXX libbitcoinconsensus_la-hash.lo
...
Making all in doc/man
make[1]: Entering directory '/home/lucifer/HTMLCOIN/doc/man'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/lucifer/HTMLCOIN/doc/man'
make[1]: Entering directory '/home/lucifer/HTMLCOIN'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/home/lucifer/HTMLCOIN'
lucifer@1004lucifer:~/HTMLCOIN$
위의 방법으로 Ubuntu 에서 HTML Coin 설치가 되었으며 아래와 같이 HTML COIN Daemon 을 수행할 수 있다.
(백그라운드로 프로세스를 띄우며 접속한 창을 닫아도 프로그램이 종료되지 않게 했으며, 하단의 명령어는 데몬프로세스가 정상적으로 구동되었는지 확인하기 위해 수행했다.)
HTMLCOIN server starting
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ ./src/htmlcoin-cli getinfo
{
"version": 2000004,
"protocolversion": 70001,
"walletversion": 130000,
"balance": 5000.00000000,
"stake": 0.00000000,
"blocks": 75261,
"timeoffset": -1,
"connections": 10,
"proxy": "",
"difficulty": {
"proof-of-work": 26.92585221801374,
"proof-of-stake": 3594083914.235587
},
"testnet": false,
"moneysupply": 79893078750,
"keypoololdest": 1515584298,
"keypoolsize": 98,
"unlocked_until": 0,
"paytxfee": 0.00000000,
"relayfee": 0.00400000,
"errors": ""
}
lucifer@1004lucifer:~/HTMLCOIN$
지갑파일의 위치는 아래와 같다.
(wallet.dat 파일을 내 지갑으로 덮어쓰기하면 내 지갑으로 사용이 가능하다.
Daemon 프로세스 종료 후 backup/restore 하는게 좋을 것 같다.)
lucifer@1004lucifer:~/HTMLCOIN$ cd ~
lucifer@1004lucifer:~$
lucifer@1004lucifer:~$ cd .htmlcoin/
lucifer@1004lucifer:~/.htmlcoin$
lucifer@1004lucifer:~/.htmlcoin$ ls -al
total 21680
drwxrwxr-x 6 lucifer lucifer 4096 Jan 12 00:50 .
drwxr-xr-x 9 lucifer lucifer 4096 Jan 11 23:37 ..
-rw------- 1 lucifer lucifer 37 Jan 11 22:08 banlist.dat
drwx------ 3 lucifer lucifer 4096 Jan 11 22:08 blocks
drwx------ 2 lucifer lucifer 4096 Jan 11 23:06 chainstate
-rw------- 1 lucifer lucifer 75 Jan 11 23:05 .cookie
drwx------ 2 lucifer lucifer 4096 Jan 11 23:05 database
-rw------- 1 lucifer lucifer 0 Jan 11 22:08 db.log
-rw------- 1 lucifer lucifer 21208136 Jan 12 00:58 debug.log
-rw------- 1 lucifer lucifer 7889 Jan 11 22:11 fee_estimates.dat
-rw------- 1 lucifer lucifer 4 Jan 11 23:05 htmlcoind.pid
-rw------- 1 lucifer lucifer 0 Jan 11 22:08 .lock
-rw------- 1 lucifer lucifer 17 Jan 11 22:11 mempool.dat
-rw------- 1 lucifer lucifer 835066 Jan 12 00:50 peers.dat
drwx------ 4 lucifer lucifer 4096 Jan 11 22:08 stateHTMLCOIN
-rw------- 1 lucifer lucifer 3059 Jan 11 23:14 vm.log
-rw-r--r-- 1 lucifer lucifer 98304 Jan 12 00:05 wallet.dat
lucifer@1004lucifer:~/.htmlcoin$
처음에 동기화가 안되는것 같아 아래와 같이 노드를 추가하여 빠르게 동기화를 해주었다.
{
"walletversion": 130000,
"balance": 0.00000000,
"stake": 0.00000000,
"unconfirmed_balance": 0.00000000,
"immature_balance": 0.00000000,
"txcount": 4,
"keypoololdest": 1515584298,
"keypoolsize": 99,
"unlocked_until": 0,
"paytxfee": 0.00000000,
"hdmasterkeyid": "51746e092f14d9a2812b078be4cb937a37b10f36"
}
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ ./src/htmlcoin-cli addnode "73.7.238.46:4888" "add"
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ ./src/htmlcoin-cli addnode "173.170.4.174:4888" "add"
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$
lucifer@1004lucifer:~/HTMLCOIN$ ./src/htmlcoin-cli getwalletinfo
{
"walletversion": 130000,
"balance": 3750.00000000,
"stake": 0.00000000,
"unconfirmed_balance": 0.00000000,
"immature_balance": 1250.00000000,
"txcount": 4,
"keypoololdest": 1515584298,
"keypoolsize": 99,
"unlocked_until": 0,
"paytxfee": 0.00000000,
"hdmasterkeyid": "51746e092f14d9a2812b078be4cb937a37b10f36"
}
lucifer@1004lucifer:~/HTMLCOIN$
지갑이 동기화 되고 있는지 확인하는 방법은 아래의 링크에서 확인할 수 있다.
- Linux 에서 지갑 동기화(sync) 되었는지 여부 확인방법
참고
- https://github.com/richardjoo/HTMLCOIN/blob/master/wallet/raspberry-pi3/how-to-install-htmlcoin-wallet-on-rpi3.md
댓글
댓글 쓰기