SIGFPE and -mieee
Several KDE apps (Konqueor, KSpread, KPresenter, etc) and others (mpg123,
xine, etc) crash with SIGFPE on the Alpha boxes in our lab. I've discovered
that this is caused by the GNU math library (and other programs) generating
floating point numbers that use parts of the mieee standard (such as
denormalization) that the Alpha floating point unit does not support.
In order to allow the Linux kernel to emulate the instructions, code has to be
complied with -mieee (if you want to see this on your Alpha box, write some C
code that sets a double equal to DBL_MIN/2 and then performs some elementry
floating point operation on it).
To do this, all one has to do is add
ifeq ($(DEB_BUILD_GNU_TYPE),alpha-linux)
export CFLAGS+=-mieee
export CXXFLAGS+=-mieee
endif
to the debian/rules file in the source package (right after the
DEB_BUILD_GNU_TYPE ?= ... line at the start of the file) . So far I've
recompiled the kdelibs and the kdebase packages. This is enough to get
Konqueor and the KOffice suite running in our lab.
I would really like to see this made the default for all debian/rules files
(unless we know the code uses the FPU and can never generate any
denormalized, etc numbers). The lack of it makes several programs not run at
all, and others that appear to be operating okay all of a sudden crash (when
clicking on the property box for an EPS file inserted into KPresenter for
example -- kind of a nasty suprise).
Any comments? Is this okay with the majority of you? Is there a way I can
email all the maintainers to get them to add the above four lines to their
debian/rules files?
Thanks & Later!
-T
--
Tyson Whitehead (-twhitehe@uwo.ca -- WSC-)
Computer Engineer Dept. of Applied Mathematics,
Graduate Student- Applied Mathematics University of Western Ontario,
GnuPG Key ID# 0x8A2AB5D8 London, Ontario, Canada
Reply to: