Your message dated Tue, 28 Feb 2017 13:48:38 +0000
with message-id <e1cii8s-000cvl...@fasolo.debian.org>
and subject line Bug#856331: fixed in mbrola 3.01h+2-2
has caused the Debian Bug report #856331,
regarding Mbrola-64 crashes immediately with a SEGFAULT
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
856331: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=856331
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: Mbrola-64Bit
Version: 3.01-

Summary: The Mbrola version currently distributed for 64 bit Debian based systems (e.g. Kubuntu) is faulty and crashes immediately with a SEGFAULT. The problem is caused by the packages distributed.

Full story:

The story of mbrola is really becoming a tragedy. It’s a piece of extremely useful software - for blind people and nonetheless for ordinary users who want to have a text read to them while they do something different.

I've been using mbrola for a number of years now before I upgraded my machine from Kubuntu 14.04-32 to 16.04-64. While the transition was smooth for most applications this made mbrola unusable since not only the distributed version is broken out of the box but there seems to be no working 64 bit version available. In various forums users currently keep asking for help to get mbrola working again - apparently no-one came up with a solution yet (for example see [1]).

So I started investigating a bit into the cause of the problem. I came up with a number of reasons - and kind of a solution...

1) Since mbrola is only free, but not open source software we have to rely on the distributed binaries.

2) The mbrola project is more or less abandoned. Many links are dead; the news section of the main web page has seen its last update in 2005 [2]. The binaries available there are only slightly younger (e.g. the AMD64Linux package dates back to Mid 2009) or even older (the Linux i386 package dates back to 2004 and some parts even to 1998).

3) Luckily enough newer versions of the software are available [3]. They are released via a number of FTP servers. I have no idea how these versions are maintained, generated and who has access to the official sources.

4) The official 64-bit version from the main website (AMD64) is indeed 64 bit.

file mbrola_AMD_Linux
mbrola_AMD_Linux: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.8, stripped

But it crashes immediately under Kubuntu 64 with an "Architecture Panic" error message. I guess this is due to the age of the compiled version and/or to an incorrect check of the host system by the software.

5) All newer 64-bit versions (all 3.01 versions available via FTP) are not 64-, but 32-bit:

file mbrola_3.01h+2-1_amd64
mbrola_3.01h+2-1_amd64: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, stripped
file mbrola_3.01h-6_amd64
mbrola_3.01h-6_amd64: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, stripped
file mbrola_3.01h+1-3_amd64
mbrola_3.01h+1-3_amd64: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, stripped

Therefore there is no up-to-date 64-bit version available - nowhere (confirmed by several hours of digging up the web).

6) At first I thought this was a bug in the build process but it’s intentional: In 2009 the Debian developers decided to use the 32- instead of the 64-bit version because the later didn't work [4]: Samuel Thibault: "Note that the reason why I've put the 32bit version in the amd64 package is that the 64bit version on the mbrola website just doesn't work at produces garbage."

Apparently they (or someone else) still distribute the 32-bit version as 64-bit.

Conclusion: We have to stick with the binaries we have and they are 32-bit (real or pseudo-64 bit).

So I did some extensive testing on all available binaries.
a) Both versions (real and pseudo64) are different but both crash under Kubuntu 64.

b) The problem is not related to a missing 386-32 architectureon my machine. LibC6-i386 (version 2.23) is installed.

c) The problem is not caused by loading the wrong, i.e. 64-bit libc-libraries:

ldd mbrola_3.01h+2-1_amd64
        linux-gate.so.1 =>  (0xf771b000)
        libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7695000)
        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf74df000)
        /lib/ld-linux.so.2 (0x56556000)

d) The problem seems to be caused by the current version of libc6 and mbrola:

cat Hallo.pho|./mbrola_3.01h+2-1_amd64 /usr/share/mbrola/de2/de2 - Test.wav
*** Error in `./mbrola_3.01h+2-1_amd64': free(): invalid pointer: 0x08a887e8 ***
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(+0x67377)[0xf7565377]
/lib/i386-linux-gnu/libc.so.6(+0x6d2f7)[0xf756b2f7]
/lib/i386-linux-gnu/libc.so.6(+0x6dbb1)[0xf756bbb1]
/lib/i386-linux-gnu/libc.so.6(_IO_wsetb+0x69)[0xf75600e9]
/lib/i386-linux-gnu/libc.so.6(+0x6bc02)[0xf7569c02]
/lib/i386-linux-gnu/libc.so.6(+0x2e93a)[0xf752c93a]
/lib/i386-linux-gnu/libc.so.6(+0x2e9ef)[0xf752c9ef]
./mbrola_3.01h+2-1_amd64(free+0x60)[0x8048c0c]
======= Memory map: ========
08048000-08050000 r-xp 00000000 08:0a 3287210 /mbrola/mbrola_3.01h+2-1_amd64 08050000-08051000 rwxp 00007000 08:0a 3287210 /mbrola/mbrola_3.01h+2-1_amd64 08a4d000-08a95000 rwxp 00000000 00:00 0 [heap]
f7300000-f7321000 rwxp 00000000 00:00 0
f7321000-f7400000 ---p 00000000 00:00 0
f74fd000-f74fe000 rwxp 00000000 00:00 0
f74fe000-f76ad000 r-xp 00000000 08:02 784943 /lib/i386-linux-gnu/libc-2.23.so f76ad000-f76ae000 ---p 001af000 08:02 784943 /lib/i386-linux-gnu/libc-2.23.so f76ae000-f76b0000 r-xp 001af000 08:02 784943 /lib/i386-linux-gnu/libc-2.23.so f76b0000-f76b1000 rwxp 001b1000 08:02 784943 /lib/i386-linux-gnu/libc-2.23.so
f76b1000-f76b4000 rwxp 00000000 00:00 0
f76b4000-f7707000 r-xp 00000000 08:02 784935 /lib/i386-linux-gnu/libm-2.23.so f7707000-f7708000 r-xp 00052000 08:02 784935 /lib/i386-linux-gnu/libm-2.23.so f7708000-f7709000 rwxp 00053000 08:02 784935 /lib/i386-linux-gnu/libm-2.23.so f7717000-f7733000 r-xp 00000000 08:02 794619 /lib/i386-linux-gnu/libgcc_s.so.1 f7733000-f7734000 rwxp 0001b000 08:02 794619 /lib/i386-linux-gnu/libgcc_s.so.1
f7734000-f7737000 rwxp 00000000 00:00 0
f7737000-f7739000 r--p 00000000 00:00 0 [vvar] f7739000-f773a000 r-xp 00000000 00:00 0 [vdso] f773a000-f775c000 r-xp 00000000 08:02 784939 /lib/i386-linux-gnu/ld-2.23.so
f775c000-f775d000 rwxp 00000000 00:00 0
f775d000-f775e000 r-xp 00022000 08:02 784939 /lib/i386-linux-gnu/ld-2.23.so f775e000-f775f000 rwxp 00023000 08:02 784939 /lib/i386-linux-gnu/ld-2.23.so fff8f000-fffb0000 rwxp 00000000 00:00 0 [stack]

The dump for the real 32-bit version of mbrola looks almost the same.

e) In 2003 a German user had a similar issue with mbrola [5]. Back then mbrola caused a segfault when used with the glibc libraries. He fixed this issue by preloading a different library.

f) In October 2016 I asked on LaunchPad (the Ubuntu Help forum) whether
LD_PRELOAD could be a solution to get mbrola running again in 64-bit systems (an solution discussed on stackoverflow for a different problem [6])

Till now no-one has come up with an idea.. [7]


GHPS
------------------------------------------------
[1] https://forum.ubuntuusers.de/topic/mbrola-produziert-segmentation-fault/
[2] http://tcts.fpms.ac.be/synthesis/mbrola.html
[3] http://ftp.rz.uni-wuerzburg.de/pub/MIRROR/debian/pool/non-free/m/mbrola/
[4] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=532972
[5] http://de.comp.os.unix.apps.misc.narkive.com/VJzJQwhq/mbrola-sigsegv-wegen-glibc-problem
[6] http://stackoverflow.com/questions/426230/what-is-the-ld-preload-trick
[7] https://bugs.launchpad.net/ubuntu/+source/mbrola/+bug/1562097

--- End Message ---
--- Begin Message ---
Source: mbrola
Source-Version: 3.01h+2-2

We believe that the bug you reported is fixed in the latest version of
mbrola, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 856...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Samuel Thibault <sthiba...@debian.org> (supplier of updated mbrola package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Tue, 28 Feb 2017 14:26:24 +0100
Source: mbrola
Binary: mbrola
Architecture: source amd64
Version: 3.01h+2-2
Distribution: unstable
Urgency: medium
Maintainer: Samuel Thibault <sthiba...@debian.org>
Changed-By: Samuel Thibault <sthiba...@debian.org>
Description:
 mbrola     - Multilingual software speech synthesizer
Closes: 856331
Changes:
 mbrola (3.01h+2-2) unstable; urgency=medium
 .
   * Add libstrongexit.so workaround. mbrola crashes on exit() cleanup, so
     don't bother trying to exit cleanly, mbrola does close the output file
     fine anyway (Closes: #856331).
     - install: install libstrongexit.so and wrapper script to use it
     - control:
       - build-depend on gcc-multilib on amd64 for cross-compiling 32bit
       libstrongexit.so
       - build-depend on dh-exec for multiarch path
       - depend on dpkg-dev for multiarch path at exec.
Checksums-Sha1:
 b00bb797896b1f32334397efd1a1dcccde26d000 1906 mbrola_3.01h+2-2.dsc
 bf3da2ea0e58440e2c40c69e317ea2aa6933545a 8336 mbrola_3.01h+2-2.debian.tar.xz
 2d64638727b44d71591cf57a5519db0ae85dfc35 2692 mbrola-dbgsym_3.01h+2-2_amd64.deb
 32c36d78987c8dbdb34f8bc3bea47eedcc40f9d8 5437 mbrola_3.01h+2-2_amd64.buildinfo
 30a86a47c4ff80e1cd5cbd4835ae8dceacc8df12 37888 mbrola_3.01h+2-2_amd64.deb
Checksums-Sha256:
 5ffd223123497decfaeab1b2e991f893e113d044b0b556af2e84f47d0f90e226 1906 
mbrola_3.01h+2-2.dsc
 6a27324c79bdc3c9ddfe99ed2c37d114838187b64e3f3d5d67ab32d6651c220d 8336 
mbrola_3.01h+2-2.debian.tar.xz
 ec7e27c0b537d4a1cc642ee98a423c795a19c6f4cbf4104d7c08237902e56c25 2692 
mbrola-dbgsym_3.01h+2-2_amd64.deb
 101c0f5501b3fc02045a86b7b5ab4849f7dea3f11a8cd5d91f64d88c46945bca 5437 
mbrola_3.01h+2-2_amd64.buildinfo
 0236add0450499c6add1cf811fd9c04b73a300dd3370be284645ea5f94c8dedb 37888 
mbrola_3.01h+2-2_amd64.deb
Files:
 8c1dfb354875e69a2ea0a59b7721065b 1906 non-free/sound optional 
mbrola_3.01h+2-2.dsc
 ed00fb82dcc05c14ccb55618d344b6b7 8336 non-free/sound optional 
mbrola_3.01h+2-2.debian.tar.xz
 9c97520277d00cb5a5457f93d3e0f93d 2692 non-free/debug extra 
mbrola-dbgsym_3.01h+2-2_amd64.deb
 6e508209fb4bf1daac8f66af2c0b5338 5437 non-free/sound optional 
mbrola_3.01h+2-2_amd64.buildinfo
 6e3e2408e7b53fd165be4b581736060f 37888 non-free/sound optional 
mbrola_3.01h+2-2_amd64.deb

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEaw+sIYVmRulKotIAoAMZaCdBSIAFAli1fJcACgkQoAMZaCdB
SIA+LA//S8ZWiFPk8KsfrhwRq7eegS+mudvTEOIlVgqawHzpc70e/3pYAiDkf3EJ
YFy9kl1MimA/6dyLvq/sgwRBQXJmd6IgmExbDMny5H0FGq+M5XshMT3dlsi2yKOU
Hf0qi+4XqofhgR2WIkAXInovNPBG83UMqkfKmSMvpSIEgGcgoPDwpHhTTLsobyJJ
/WzYfXfJi9eWIij7Mb0oTzieXf0PeHJzMaZ10CjmFjaa3yB5gj0iTIXNUSb9khPW
8hpM7WjL+J5B21ozPp7iRbR4+HhnVRL0ck/w5FN/zN0ShVINxto/PC8nmvwqSzdf
m1kKxLa438PushOg/4rwNIdR7tbg0uZNhGbgsP6nKGgiJ7vmdvC8aFJweiRShgTr
WHdlg2yXOnin8m63sn8ZGFThmFN3rIwmEy3mQeDmy/ExeHb7xRmkDtkKgoCS/lTE
RnBt1gLfBDh7LVqJKx32VXqOqkjVDrM33yIrePtJio5JYF75BjmN4pG/MBUvHovT
nicegXuHn6oHrGYyA9pgGHKEEeI/6KjVUYk9wcS8tYv5SOA4POAwAk0E9rpErb9O
goUOznP4mQECMbwDD6NYLGKaYQQogBFwiuSLRs2bq5yj8DrRnah+vrRGn6RrdRdJ
Mu7bUfwCJWM76xBGNy5oiD0qTi5BtKXPI4NtmO8ucuYFOSeVVNs=
=5BKE
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to