Package: bitcoind
Version: 0.3.24~dfsg-1
Severity: important
Tags: patch

The wheezy bitcoind package is completely unusable on mips (big endian). When starting bitcoind on mips, it immediately fails with the following error:

bitcoind: main.cpp:1545: bool LoadBlockIndex(bool):
Assertion `block.hashMerkleRoot == uint256("0x4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b")' failed.

New versions apparently fail to build from source, most like due to the test suite being run at build time.[1]

I have filed a wishlist-severity bug[2] against bitcoind asking for big-endian support. However, that's unlikely to happen any time soon, because upstream has said that big-endian simply isn't supported and has probably never worked[3]. I'm attaching a patch that will prevent bitcoind from being built on big-endian architectures for now, so that the lack of big-endian support won't prevent new versions from propagating to testing on little-endian architectures.

Since bitcoind is currently useless on big-endian architectures, a bug should[4] be filed against ftp.debian.org once this patch is applied, asking that the old binaries be removed from the following big-endian architectures: mips powerpc s390 sparc sparc64 hppa powerpcspe.

Cheers,
- Dwayne

[1] 
https://buildd.debian.org/status/fetch.php?pkg=bitcoin&arch=mips&ver=0.6.0-1&stamp=1333140761
[2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=668864
[3] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=665922
[4] http://www.debian.org/devel/testing (under "Why is it sometimes hard to get Architecture: all packages into 'testing'?")

-- System Information:
Debian Release: wheezy/sid
   APT prefers testing
   APT policy: (500, 'testing')
Architecture: mips

Kernel: Linux 2.6.32-5-4kc-malta
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages bitcoind depends on:
ii  libboost-filesystem1.46.1       1.46.1-8
ii  libboost-program-options1.46.1  1.46.1-8
ii  libboost-system1.46.1           1.46.1-8
ii  libboost-thread1.46.1           1.46.1-8
ii  libc6                           2.13-27
ii  libcrypto++9                    5.6.1-5
ii  libdb5.1++                      5.1.29-1
ii  libgcc1                         1:4.7.0-1
ii  libglib2.0-0                    2.30.2-6
ii  libminiupnpc5                   1.5-2
ii  libssl1.0.0                     1.0.1-4
ii  libstdc++6                      4.7.0-1
ii  zlib1g                          1:1.2.6.dfsg-2

bitcoind recommends no packages.

Versions of packages bitcoind suggests:
pn  db-util     <none>
pn  db4.7-util  <none>
pn  db4.8-util  <none>

-- no debconf information
>From 15017391424f9c29f4ae7e29729cd784a11d598d Mon Sep 17 00:00:00 2001
From: "Dwayne C. Litzenberger" <dl...@dlitz.net>
Date: Sun, 15 Apr 2012 01:19:24 -0400
Subject: [PATCH] Only build little-endian architectures

---
 debian/control |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/debian/control b/debian/control
index 1c83ea7..1ca3f67 100644
--- a/debian/control
+++ b/debian/control
@@ -22,8 +22,11 @@ Homepage: http://www.bitcoin.org/
 Vcs-Git: git://git.debian.org/git/collab-maint/bitcoin
 Vcs-Browser: http://git.debian.org/?p=collab-maint/bitcoin.git
 
+# The Architecture section should list all the little-endian architectures.
+# See http://wiki.debian.org/ArchitectureSpecificsMemo for a list.
 Package: bitcoind
-Architecture: any
+Architecture: any-alpha any-amd64 any-armel any-armhf any-i386 any-ia64
+ any-mipsel any-sh4
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Suggests: ${cdbs:Suggests}
 Description: peer-to-peer network based digital currency - daemon
-- 
1.7.9.5

Reply via email to