Bitcoin Forum
October 05, 2024, 07:41:33 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: bitcoind not working on SPARC (and PPC)  (Read 3154 times)
Darka (OP)
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
July 14, 2011, 09:07:23 PM
Last edit: July 15, 2011, 10:49:09 AM by Darka
 #1

Hello all!

I build bitcoind from last stable source (0.3.24). But it's not work. After i try run bitcoind i get:
Code:
bitcoind: main.cpp:1546: bool LoadBlockIndex(bool): Assertion `block.hashMerkleRoot == uint256("0x4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b")' failed.
Aborted

Does anybody has solution for this bug?

Platform info:
Code:
# cat /proc/cpuinfo | head -7
cpu : UltraSparc T1 (Niagara)
fpu : UltraSparc T1 integrated FPU
pmu : niagara
prom : OBP 4.30.3 2009/06/08 13:27
type : sun4v
ncpus probed : 24
ncpus active : 24
# uname -a
Linux mikuru 2.6.32-5-sparc64-smp #1 SMP Wed Jan 12 05:23:55 UTC 2011 sparc64 GNU/Linux
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 6.0.2 (squeeze)
Release: 6.0.2
Codename: squeeze
# gcc -v
Using built-in specs.
Target: sparc-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.5-8' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-targets=all --with-long-double-128 --enable-checking=release --build=sparc-linux-gnu --host=sparc-linux-gnu --target=sparc-linux-gnu
Thread model: posix
gcc version 4.4.5 (Debian 4.4.5-8)
JoelKatz
Legendary
*
Offline Offline

Activity: 1596
Merit: 1012


Democracy is vulnerable to a 51% attack.


View Profile WWW
July 14, 2011, 10:24:01 PM
 #2

Sounds like an endianness bug.

I am an employee of Ripple. Follow me on Twitter @JoelKatz
1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
Darka (OP)
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
July 15, 2011, 06:25:55 AM
 #3

Any idea how fix it on non x86 platforms?
Binford 6100
Hero Member
*****
Offline Offline

Activity: 504
Merit: 504


PGP OTC WOT: EB7FCE3D


View Profile
July 15, 2011, 10:02:03 AM
 #4

had the same problem with powerpc, what worked for me was to accept it and switch to intel.

You can't build a reputation on what you are going to do.
Darka (OP)
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
July 15, 2011, 10:47:59 AM
 #5

had the same problem with powerpc, what worked for me was to accept it and switch to intel.
and it's not solution, it's dirty lifehack =)
Mike Hearn
Legendary
*
expert
Offline Offline

Activity: 1526
Merit: 1134


View Profile
July 15, 2011, 11:08:00 AM
 #6

Not a bug so much as a design decision. The Satoshi Bitcoin implementation does not work on big endian architectures and likely never will.

If you want to be a BE Bitcoiner, your best bet is to use one of the other implementations like BitCoinJ or BitCoinJS.
Darka (OP)
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
July 15, 2011, 11:12:25 AM
 #7

Not a bug so much as a design decision. The Satoshi Bitcoin implementation does not work on big endian architectures and likely never will.

If you want to be a BE Bitcoiner, your best bet is to use one of the other implementations like BitCoinJ or BitCoinJS.

Does BitCoinJ ready for production use on pool servers? Or only way is use dedicated x86 server for bitcoind?
Pieter Wuille
Legendary
*
qt
Offline Offline

Activity: 1072
Merit: 1181


View Profile WWW
July 15, 2011, 12:31:54 PM
 #8

Not a bug so much as a design decision. The Satoshi Bitcoin implementation does not work on big endian architectures and likely never will.

If you want to be a BE Bitcoiner, your best bet is to use one of the other implementations like BitCoinJ or BitCoinJS.

I'm not that sure the codes relies on LE that often. The serialization routines for integers, uint160, uint256, and the fact that pointers to those structures are passed directly to hashing routines, would need to be adapted. That does seem reasonable (though not high priority) to change, unless there is a ton i'm forgetting now.

I do Bitcoin stuff.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!