Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 210551 - Get qt-3.3.8 building on mips
Summary: Get qt-3.3.8 building on mips
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 188857
  Show dependency tree
 
Reported: 2008-02-18 01:02 UTC by Ryan Hill (RETIRED)
Modified: 2008-03-03 20:25 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
qt-3.3.8-mips.patch (qt-3.3.8-mips.patch,977 bytes, text/plain)
2008-02-18 01:04 UTC, Ryan Hill (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Hill (RETIRED) gentoo-dev 2008-02-18 01:02:55 UTC
Building qt-3.3.8 on mips results in uic throwing a SIGBUS at us.

/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins pixmapfunction.ui -o pixmapfunction.h
/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins createtemplate.ui -o createtemplate.h
/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins actioneditor.ui -o actioneditor.h
/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins projectsettings.ui -o projectsettings.h
/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins finddialog.ui -o finddialog.h
/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/bin/uic -L /var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/plugins replacedialog.ui -o replacedialog.h
make[3]: *** [pixmapfunction.h] Bus error
make[3]: *** Deleting file `pixmapfunction.h'
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [createtemplate.h] Bus error
make[3]: *** Deleting file `createtemplate.h'
make[3]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools/designer/designer'
make[2]: *** [sub-designer] Error 2
make[2]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools/designer'
make[1]: *** [sub-designer] Error 2
make[1]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools'
make: *** [sub-tools] Error 2
 *
 * ERROR: x11-libs/qt-3.3.8-r4 failed.


The attached patch from Debian was originally used to fix the same error on HPPA, but it works well enough for us.

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=342545#165

Upstream status is unknown, but considering it's Debian and a cornercase arch I bet they've never seen this patch.  It fixes a legitimate problem in qlocale.cpp though so they would probably be interested.

According to Redhatter, we've been previously working around this by building with -mips1.
Comment 1 Ryan Hill (RETIRED) gentoo-dev 2008-02-18 01:04:49 UTC
Created attachment 143841 [details]
qt-3.3.8-mips.patch

Fix the bogus assumption in src/tools/qlocale.cpp that a char[] can be cast to a double *.  Steve Langasek <vorlon@paer.debian.org>
Comment 2 Ryan Hill (RETIRED) gentoo-dev 2008-02-18 01:05:38 UTC
mneme ~ # emerge --info
Portage 2.1.4.4 (default-linux/mips/2007.1-dev/generic-be/o32, gcc-4.1.2, glibc-2.6.1-r0, 2.6.23.14-mipsgit-20080206 mips64)
=================================================================
System uname: 2.6.23.14-mipsgit-20080206 mips64 R5000 V2.1 FPU V1.0
Timestamp of tree: Thu, 14 Feb 2008 01:00:04 +0000
distcc 2.18.3 mips-unknown-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p33
dev-lang/python:     2.5.1-r5
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.61-r1
sys-devel/automake:  1.6.3, 1.7.9-r1, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.17-r2, 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.24
ACCEPT_KEYWORDS="mips ~mips"
CBUILD="mips-unknown-linux-gnu"
CFLAGS="-O2 -march=r5000 -mabi=32 -fomit-frame-pointer -pipe"
CHOST="mips-unknown-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=r5000 -mabi=32 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache digest distcc distlocks fixpackages metadata-transfer parallel-fetch sfperms splitdebug strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.arcticnetwork.ca/source/ http://gentoo.osuosl.org http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="en en_US"
MAKEOPTS="-j6"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/dirtyepic/overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X akode bash-completion berkdb bitmap-fonts bzip2 cairo cli cracklib crypt fam fbcon fftw flac gdbm gif gmp gnutls gtk iconv imlib isdnlog jpeg libwww lzo midi mips mp3 ncurses network-cron nptl nptlonly ogg opengl openmp pam pcre pdf perl pic png pppd python qt3 readline reflection sdl session sndfile spell spl sqlite ssl svg tcpd theora threads tiff truetype truetype-fonts type1-fonts unicode urandom vim-syntax vorbis xml xorg xv zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" USERLAND="GNU" VIDEO_CARDS="fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2008-03-03 19:06:49 UTC
It's been building fine on HPPA without that patch. Maybe it's related to a specific gcc version. I can't think of another reason why it just works for Gentoo and not for Debian.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2008-03-03 19:26:08 UTC
OK, I get the picture now. On Debian's test build hosts, unaligned access results in a SIGBUS being sent and causes a build failure. The bug mentioned in the description explains that the test builds failed for that reason. Gentoo/HPPA kernels do not respond to unaligned access events with a SIGBUS being returned, but simply note it in dmesg quietly and get on with life, like this:

Mar  3 20:25:00 elmer fcron[13578]: Job php /var/www/localhost/htdocs/cacti/cmd.
php >> /var/log/cacti_cmd 2>&1 started for user root (pid 13579)
Mar  3 20:25:00 elmer [60756.184000] php(13580): unaligned access to 0x4005604d
at ip=0x004f4ebf
Mar  3 20:25:00 elmer [60756.184000] php(13580): unaligned access to 0x4005604d
at ip=0x004f5037
Mar  3 20:25:00 elmer [60756.184000] php(13580): unaligned access to 0x4005604e
at ip=0x004f48af
Mar  3 20:25:00 elmer [60756.184000] php(13580): unaligned access to 0x4005604e
at ip=0x004f5037
Mar  3 20:25:04 elmer fcron[13578]: Job php /var/www/localhost/htdocs/cacti/cmd.
php >> /var/log/cacti_cmd 2>&1 completed
Comment 5 Ingmar Vanhassel (RETIRED) gentoo-dev 2008-03-03 20:25:52 UTC
Applied, thanks :)