読者です 読者をやめる 読者になる 読者になる

仮想通貨サービス BitCapitalZ の日記

仮想通貨関連のブログです Ripple, Ethereum 仮想通貨2.0に注目しています

【リップル】Rippleゲートウェイの作り方1 rippled の用意【Ripple】

Ripple のゲートウェイを設置したいと思っているのですが、全然ノウハウが無いので google
[ripple gateway setup] で検索してでてきた使えそうな情報が以下になります。

Gateway Integration Manual - Ripple Wiki

How to Build a Gateway - Ripple Wiki

How to create a ripple gateway? - Bitcoin Stack Exchange

Gateway Guide - Ripple Wiki

これらをざっと見回したのですが、実のところまだよくわかっておりません。特に独自発行IOUとどのように結びつけるかの部分です。

でもとりあえず手を動かしながら勉強していこうと思います。

Gateway Integration Manual - Ripple Wiki
によると、まず必要となるのが rippled のようなのでこれを用意します。僕の環境は Thinkpad X201s Ubuntu14.04 です。

Rippled build instructions - Ripple Wiki を見ながら rippled を用意します。

# add-apt-repository -y ppa:boost-latest/ppa ; sudo apt-get update ; sudo apt-get -y upgrade ; 
# sudo apt-get -y install git scons ctags pkg-config protobuf-compiler libprotobuf-dev libssl-dev python-software-properties libboost1.55-all-dev nodejs; 
# git clone https://github.com/ripple/rippled.git ; cd rippled/ ; git checkout master ; scons build/rippled; 

上記手順でサクッとビルドできるようなんですが、僕のマシンのように型落ちだと以下のエラーが発生してしまいます。

In file included from src/ripple/unity/rocksdb.cpp:111:0:
src/rocksdb2/util/crc32c.cc: In function ‘void rocksdb::crc32c::Fast_CRC32(uint64_t*, const uint8_t**)’:
src/rocksdb2/util/crc32c.cc:318:39: error: ‘_mm_crc32_u64’ was not declared in this scope
   *l = _mm_crc32_u64(*l, LE_LOAD64(*p));
                                       ^
scons: *** [build/gcc.release/src/ripple/unity/rocksdb.o] Error 1
scons: building terminated because of errors.

_mm_crc32_u64という関数が無いと言われているようですね。src/rocksdb2/util/crc32c.cc を開いて以下のように修正してしまいます。

--- a/src/rocksdb2/util/crc32c.cc
+++ b/src/rocksdb2/util/crc32c.cc
@@ -315,8 +315,7 @@ static inline void Slow_CRC32(uint64_t* l, uint8_t const **p) {
 
 static inline void Fast_CRC32(uint64_t* l, uint8_t const **p) {
 #ifdef __SSE4_2__
-  *l = _mm_crc32_u64(*l, LE_LOAD64(*p));
-  *p += 8;
+  Slow_CRC32(l, p);
 #else
   Slow_CRC32(l, p);
 #endif

これで

# scons build/rippled

を実行すると build/rippled が出来上がります。


他にもお困りな事等ありましたら、下記のフォーラムにご質問下さい。
Ripple Stellar Ethereum 掲示板 in BitCapitalZ

Facebook に Ripple のコミュニティを作りました。よろしかったら是非加入申請をお願いします。

https://www.facebook.com/groups/267882873336187/