Bug 93880 - quakeforge console_client fails when built with gcc-3.4.x
|
Bug#:
93880
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Other
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: games@gentoo.org
|
Reported By: xero@xeron.cc
|
|
Component: Games
|
|
|
URL:
http://www.quakeforge.net
|
|
Summary: quakeforge console_client fails when built with gcc-3.4.x
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-05-24 21:36 0000
|
I'm not too sure about the specifics of this problem. I've tried re-emerging
with a few different settings, even trying a cvs snapshot, to no avail.
Basically when I start up quakeforge I get this along with it's normal output:
Could not load plugin "/usr/games/lib/quakeforge/console_client.so".
which, doesn't stop the game from loading however pressing escape or ~ to bring
up the console or menu doesn't do a thing, leaving you with the demo going but
inability to start a game, or what not. This is with nq-sdl and nq-sgl. When I
use nq-glx, which is the client I normally use, I get this:
Inconsistency detected by ld.so: ../sysdeps/generic/dl-tls.c: 75:
_dl_next_tls_modid: Assertion `result <= _rtld_local._dl_tls_max_dtv_idx'
failed!
which is obviously related to TLS, I'm guessing because I now run nptlonly. Not
too sure if this would cause the first problem as well but it's obvious
quakeforge has some issues. It appears their mailing lists are down and
development has pretty halted too...anyway here's emerge info
Portage 2.0.51.22-r1 (default-linux/x86/2005.0, gcc-3.4.3-20050110,
glibc-2.3.5-r0, 2.6.11-ck7-r1 i686)
=================================================================
System uname: 2.6.11-ck7-r1 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.6.12
dev-lang/python: 2.3.5
sys-apps/sandbox: 1.2.8
sys-devel/autoconf: 2.13, 2.59-r6
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5
sys-devel/binutils: 2.16
sys-devel/libtool: 1.5.18
virtual/os-headers: 2.6.11
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo
http://gentoo.mirrors.tds.net/gentoo
ftp://gentoo.netnitco.net/pub/mirrors/gentoo/source/
http://gentoo.oregonstate.edu"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="x86 X aalib acpi alsa apm artworkextra avi bitmap-fonts cdr crypt cups
curl dvd dvdr emboss encode esd fam ffmpeg flac foomaticdb fortran gdbm gif
gimpprint gnome gpm gstreamer gtk gtk2 guile imagemagick ipv6 java jpeg libg++
libwww lirc mad mikmod mmx mmx2 mozilla mp3 mpeg ncurses network nls nptl
nptlonly nvidia offensive ogg oggvorbis opengl oss pam pango pdflib perl png
ppds python quicktime readline real rtc samba sdl slang spell sse sse2 ssl
tcltk tcpd tiff truetype truetype-fonts type1-fonts userlocales v4l v4l2 vorbis
win32codecs xine xinerama xml2 xv xvmc zlib userland_GNU kernel_linux
elibc_glibc"
Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
I have this problem too (using gcc-3.4.4). A poster in the forums also
encountered the issue using a gcc-3.4.3 release and fixed it by instead building
with gcc-3.3.4. So this problem does appear to be related to the use of
=gcc-3.4.*. Unfortunately, I don't know of a solution other than the
aformentioned workaround ...
Well, it might be worth a shot to email the quakeforge guys but the project
seems pretty inactive. All that's really needed is a patch to fix compilation on
3.4.x.
hrmm, i just rebuilt quakeforge with --enable-shared=no --enable-static=yes and
now it's working. I'm going to rebuild again without that to make sure that was
actually the thing that fixed it.
Well, that would make sense as it does appear to be a runtime linking error. I
wonder how drastically that would affect the "working set" of the binaries?
Hopefully not to a great extent.
recompiling without that and it broke, so this does fix it. Oh yeah it also
fixed my issue with nq-glx.
This is definitely more of a workaround than anything but it gets it working and
that's good enough for me.
OK, I believe I have a much less drastic (but equally effective) solution for
this and that's simply to build using the --with-static-plugins option. No need
to render the whole thing static. I will attach a proposed ebuild. Jordan, would
you be so kind as to quickly test this on your setup? Other than that, I think
this should be committed as soon as reasonably possible.
Created an attachment (id=62635) [details]
games-fps/quakeforge-0.5.5-r1.ebuild
Compiles plugins statically to avoid dynamic runtime linking issues with newer
compilers and the all-important console plug-in in particular.
That worked fine. Both console and *-glx are working.
*** This bug has been marked as a duplicate of 52374 ***
52374 is fixed however this bug is not fixed. 52374 fixed the issue with nq-glx
that I was having, however this was apparently a separate issue. The
console_client.so problem is still there.
This also fixed it for me. Since it looks unlike the upstream will do anything
why not push this ebuild?
Created an attachment (id=70919) [details]
Patch for console_client.so problem, WFM
I've created this small patch, which solves problem for me, but I guess it
needs to be applied wisely, ie. I don't know if it doesn't break things with
gcc-3.3.x; it should be handled in .ebuild I guess. Test it by yourself, WFM.
*** Bug 116393 has been marked as a duplicate of this bug. ***
Bug 127790 is a duplicate of this bug.
The patch in that bug is effectively identical to that in
comment #13.
Using 0.5.5-keys.patch from Bug 127790, I have created
a working quakeforge overlay.
I have tested this and it builds and runs and the keyboard then works, as
several dead ogres will testify. :-)
I am attaching this overlay.
IMHO, this should be commited to CVS as quakeforge is broken without it.
*** Bug 127790 has been marked as a duplicate of this bug. ***
A patch is in portage now. Patch are mostly taken from FreeBSD.
Thanks for report