Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 31395 - Alpha Centauri's tcp/ip multiplayer crashed with glibc-2.3.2-r1
Summary: Alpha Centauri's tcp/ip multiplayer crashed with glibc-2.3.2-r1
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Games
URL: http://forums.gentoo.org/viewtopic.ph...
Whiteboard:
Keywords:
Depends on:
Blocks: 98687
  Show dependency tree
 
Reported: 2003-10-18 02:17 UTC by Paul Tötterman
Modified: 2005-09-08 18:55 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Tötterman 2003-10-18 02:17:21 UTC
I got Alpha Centauri running on Gentoo following the advices in the Gentoo
Forums. However, when I tried to play a tcp/ip game with my friend, alpha
centauri crashed. There was someone else stating this problem in the forums and
they got rid of it by downgrading to glibc-2.3.1. My friend also tried this on
his debian, running libc6-2.3.2-8, and it worked. So the fix is in the debian
patches, I'd just like to figure out which one it is. 

Reproducible: Always
Steps to Reproduce:
1. Install Alpha Centauri
2. Update to latest (otherwise it will not run at all) (help:
http://www.icculus.org/lgfaq/#lokipatch)
3. Run the game
4. Select Multiplayer -> Internet (tcp/ip)

Actual Results:  
The game crashes

Expected Results:  
I should give me the option to host/join a game

Portage 2.0.49-r13 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.20-gentoo-r7)
=================================================================
System uname: 2.4.20-gentoo-r7 i686 AMD Athlon(tm) XP 2000+
Gentoo Base System version 1.4.3.10p1
ccache version 2.3 [enabled]
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon-xp -O3 -mmmx -msse -m3dnow -mfpmath=sse,387
-fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=athlon-xp -O3 -mmmx -msse -m3dnow -mfpmath=sse,387
-fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs sandbox userpriv usersandbox ccache fixpackages"
GENTOO_MIRRORS="ftp://shed/gentoo/ http://kame/portage/
ftp://trumpetti.atm.tut.fi/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 oss apm avi crypt cups encode foomaticdb jpeg mad mikmod mpeg ncurses
nls pdflib png quicktime spell truetype xml2 xv zlib directfb alsa gdbm berkdb
slang readline tetex java guile X sdl gpm tcpd pam libwww ssl perl python imlib
oggvorbis opengl mozilla cdr 3dnow acl acpi acpi4linux amd cscope curl dga doc
dvd ethereal faad fbcon flash gd gphoto2 gtk2 ipv6 jikes junit maildir md5sum
memlimit mng moznoirc moznomail nocardbus nowin nptl oav offensive openal
plotutils radeon sse tiff usb -arts -gif -kde -libg++ -qt -xmms -nas -bonobo
-svga -tcltk -esd -gnome -gtk -motif"
Comment 1 Paul Tötterman 2003-10-18 02:22:18 UTC
You can see the changes that debian has made here: http://ftp.debian.org/debian/pool/main/g/glibc/glibc_2.3.2-8.diff.gz
Comment 2 SpanKY gentoo-dev 2003-10-18 02:29:03 UTC

*** This bug has been marked as a duplicate of 30865 ***
Comment 3 SpanKY gentoo-dev 2003-10-18 03:11:38 UTC
wonder if it's an errno bug
Comment 4 Paul Tötterman 2003-10-18 03:28:38 UTC
I can also play multiplayer by mail/hotseat, as also stated in the post on
the forums.
Comment 5 Paul Tötterman 2003-10-19 00:08:53 UTC
How could I find out where it actually crashes? I'd like to help out, I'm
just not advanced enough to debug binary-only applications. But please give
me some pointers.
Comment 6 Chris Gianelloni (RETIRED) gentoo-dev 2003-11-04 09:09:19 UTC
I'll take a look at this as soon as time permits.  To be honest, I probably
will not fix it, but rather will create an official ebuild for the game which
should incorporate any bug fixes.
Comment 7 Andrew Cooks (RETIRED) gentoo-dev 2004-01-31 14:56:40 UTC
Can someone verify that this bug still happens on glibc-2.3.2-r9?

If it still happens, please reopen this bug.
Comment 8 Mr. Bones. (RETIRED) gentoo-dev 2004-02-23 11:19:56 UTC
No data for three weeks?  closing.
Comment 9 Boris Pozar 2004-02-26 15:41:30 UTC
This still happens on glibc-2.3.2-r9. I made some further tests and I can confirm, that the same thing happens with Heroes Of Might And Magic 3.
Comment 10 Chris Gianelloni (RETIRED) gentoo-dev 2004-02-27 04:02:51 UTC
Alright... I'm reopening this, then... I'll probably just add an ebuild sometime in the near future for both to solve the problem
Comment 11 Paul Tötterman 2004-03-11 11:40:02 UTC
Sorry that it took so long, but I can also verify this happening with glibc-2.3.2-r9.
Comment 12 Daniel Pierce 2004-07-10 00:33:06 UTC
Still happening on glibc-2.3.3.20040420
Error from the game is:

smac: dynamic-link.h:57: elf_get_dynamic_info: Assertion `! "bad dynamic tag"' failed.

This seems to be the relevent part of an strace, beginning about when the Internet Play button is clicked:

select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 10000}) = 0 (Timeout)
gettimeofday({1089444367, 681442}, NULL) = 0
gettimeofday({1089444367, 681496}, NULL) = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 14
setsockopt(14, SOL_SOCKET, SO_BROADCAST, [1], 4) = 0
bind(14, {sa_family=AF_INET, sin_port=htons(32292), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
uname({sys="Linux", node="lewis", ...}) = 0
gettimeofday({1089444367, 681825}, NULL) = 0
getpid()                                = 8320
open("/etc/resolv.conf", O_RDONLY)      = 17
fstat(17, {st_mode=S_IFREG|0644, st_size=50, ...}) = 0
old_mmap(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40e7e000
read(17, "nameserver 67.36.128.26\nnameserv"..., 131072) = 50
read(17, "", 131072)                    = 0
close(17)                               = 0
munmap(0x40e7e000, 131072)              = 0
uname({sys="Linux", node="lewis", ...}) = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 17
connect(17, {sa_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = -1 ENOENT (No such file or directory)
close(17)                               = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 17
fstat(17, {st_mode=S_IFREG|0644, st_size=497, ...}) = 0
old_mmap(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40e7e000
read(17, "# /etc/nsswitch.conf:\n# $Header:"..., 131072) = 497
read(17, "", 131072)                    = 0
close(17)                               = 0
munmap(0x40e7e000, 131072)              = 0
open("/etc/ld.so.cache", O_RDONLY)      = 17
fstat(17, {st_mode=S_IFREG|0644, st_size=76861, ...}) = 0
old_mmap(NULL, 76861, PROT_READ, MAP_PRIVATE, 17, 0) = 0x40e7e000
close(17)                               = 0
open("/lib/libnss_files.so.2", O_RDONLY) = 17
fstat(17, {st_mode=S_IFREG|0755, st_size=37888, ...}) = 0
read(17, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\35\0\000"..., 4096) = 4096
old_mmap(NULL, 39944, PROT_READ|PROT_EXEC, MAP_PRIVATE, 17, 0) = 0x40e91000
mprotect(0x40e9a000, 3080, PROT_NONE)   = 0
old_mmap(0x40e9a000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 17, 0x8000) = 0x40e9a000
close(17)                               = 0
open("/lib/libc.so.6", O_RDONLY)        = 17
fstat(17, {st_mode=S_IFREG|0755, st_size=1213416, ...}) = 0
read(17, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 U\1\000"..., 4096) = 4096
old_mmap(NULL, 1140236, PROT_READ|PROT_EXEC, MAP_PRIVATE, 17, 0) = 0x413d7000
mprotect(0x414e8000, 22028, PROT_NONE)  = 0
old_mmap(0x414e8000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 17, 0x111000) = 0x414e8000
old_mmap(0x414eb000, 9740, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x414eb000
close(17)                               = 0
write(2, "smac: dynamic-link.h:57: elf_get"..., 87) = 87
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
kill(8320, SIGABRT)                     = 0
--- SIGABRT (Aborted) @ 0 (0) ---
open("/home/dan/.loki/smac/stack-trace.txt", O_WRONLY|O_CREAT|O_TRUNC, 0644) = 17
write(17, "\n", 1)                      = 1
write(2, "\n", 1)                       = 1
write(17, "BUG!  Exception triggered, clean"..., 40) = 40
write(2, "BUG!  Exception triggered, clean"..., 40) = 40
write(17, "Sid Meier\'s Alpha Centauri 6.0a\n", 32) = 32
write(2, "Sid Meier\'s Alpha Centauri 6.0a\n", 32) = 32
write(17, "Built with glibc-2.1 on x86\n", 28) = 28
write(2, "Built with glibc-2.1 on x86\n", 28) = 28
write(2, "Please send the text of the fail"..., 108) = 108
close(17)                               = 0
execve("/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/local/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/opt/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/i686-pc-linux-gnu/gcc-bin/3.3/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/X11R6/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/opt/sun-jdk-1.4.2.04/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/opt/sun-jdk-1.4.2.04/jre/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/opt/sun-jdk-1.4.2.04/jre/javaws/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/qt/3/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
execve("/usr/games/bin/loki_qagent", ["loki_qagent", "--product_name", "smac", "--product_version", "6.0a", "--product_desc", "Sid Meier\'s Alpha Centauri 6.0a", "--product_path", "/usr/local/games/smac", "--product_prefs", "/home/dan/.loki/smac", "--product_cdrom", "", "--stack_trace", "/home/dan/.loki/smac/stack-trace"...], [/* 51 vars */]) = -1 ENOENT (No such file or directory)
write(2, "Unable to execute loki_qagent - "..., 40) = 40
_exit(-1)                               = ?
Comment 13 Larry Kopenkoskey 2004-11-18 10:19:35 UTC
Well it looks like a new heroes3 ebuild uses local libraries from a debian package.  Something similar could possibly be done here.
heroes3 report: http://bugs.gentoo.org/show_bug.cgi?id=71044
I'll be testing the other ebuild and then look into this one.
Comment 14 Chris Gianelloni (RETIRED) gentoo-dev 2005-05-04 18:39:23 UTC
Any word on whether lib-compat-loki works on this game?
Comment 15 UncleOwen 2005-07-17 13:24:03 UTC
Yes, it does. Will update the ebuild in #98687 accordingly.
Comment 16 Chris Gianelloni (RETIRED) gentoo-dev 2005-09-08 18:55:39 UTC
Ebuild finally in CVS... enjoy...