アサーション失敗 - Ubuntu Lucid
Ubuntu Lucid(32ビット)を使っていて、パッケージはすべて最新だ。以前はbitcoin 0.2を動かしていたが、0.3をダウンロードしたところだ。bitcoindを実行したら、以下のエラーが出た:
bitcoin: main.cpp:823: unsigned int GetNextWorkRequired(const CBlockIndex*): Assertion `pindexFirst’ failed. Aborted
そこでビットコインのGUIを起動したところ、既存のコインは表示されたが、すぐに同じエラーが出てクラッシュした。そのあと、0.2のGUIに戻って実行してみると、以下のエラーが出た:
bitcoin: main.cpp:743: unsigned int GetNextWorkRequired(const CBlockIndex*): Assertion `pindexFirst’ failed. Aborted
データベースが壊れたのだろうか? 依存関係が壊れているのだろうか?
ソースから0.3をビルドしようとしたが、エラーがたくさん出た。たぶん*-devパッケージがいくつか足りないのだろう。これはあとで調べるつもりだ。
このエラーを見たのは初めてだ。
ブロック数はいくつ? (ステータスバーに表示されている)
blk*.datファイル(~/.bitcoin内)を別のディレクトリに移動して、ブロックチェーンのダウンロードをやり直してほしい。差し支えなければ、古いblk*.datファイルを確認する必要が出た場合に備えて、しばらく保管しておいてもらえないだろうか?
58464ブロックある……しばらくソフトウェアを動かしていなかった
ブロックファイルを移動した……全部もう一度処理し直している。コインが消えたが、最新まで追いつけば戻ってくると思う?