Source: leveldb Version: 1.14.0-2 Severity: wishlist Tags: patch I've dealt recently with a few segfaults in libleveldb1 code. I suspect the error is in the code calling in to leveldb, and not the leveldb code itself, but it's rather difficult to tell for sure, especially since this happened on armel. gdb seems to have a lot of trouble determining traceback chains and what assembly instructions belong to which functions on that architecture.
If Debian's leveldb packages could ship detached debugging symbols, it could make life easier for a lot of users. I attach a tested patch to accomplish this here; I've also pushed it to a branch named "add-libleveldb-dbg" in the collab-maint git repo, if that is easier. Thanks for working on Debian! p -- System Information: Debian Release: 7.2 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable'), (50, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
commit 5c9728572621e63c503cc50030830ad147271eec Author: paul cannon <p...@debian.org> Date: Wed Nov 6 10:18:51 2013 -0700 Ship leveldb-dbg package. diff --git a/debian/changelog b/debian/changelog index d4552e6..62a864d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +leveldb (1.14.0-2.1) UNRELEASED; urgency=low + + * Non-maintainer upload. + * Ship leveldb-dbg package. + + -- paul cannon <p...@debian.org> Wed, 06 Nov 2013 10:35:06 -0700 + leveldb (1.14.0-2) unstable; urgency=low * Inject CPPFLAGS into CFLAGS for hardening. diff --git a/debian/control b/debian/control index aa25039..e349ada 100644 --- a/debian/control +++ b/debian/control @@ -69,6 +69,20 @@ Description: fast key-value storage library (development files) . This package provides the development files. +Package: libleveldb-dbg +Section: debug +Architecture: any +Depends: + libleveldb1 (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Priority: extra +Description: fast key-value storage library (debug symbols) + LevelDB is a fast key-value storage library written at Google that + provides an ordered mapping from string keys to string values. + . + This package provides the debugging symbols. + Package: leveldb-doc Section: doc Architecture: all diff --git a/debian/rules b/debian/rules index 279a3ea..554069e 100755 --- a/debian/rules +++ b/debian/rules @@ -19,7 +19,7 @@ else OPT=-O2 endif -export OPT += -DNDEBUG +export OPT += -g -DNDEBUG %: dh $@ --parallel @@ -29,3 +29,6 @@ override_dh_auto_test: get-orig-source: debian/get-git-source.sh + +override_dh_strip: + dh_strip --dbg-package=libleveldb-dbg