Hai.. I'm looking for advice / pointers
Compiled a testmod on the linux platform and the dedicated server is
crashing when we load -game testmod.
(the testmod is based from ep1 sdk)
./srcds_i486 -game testmod
Console initialized.
Segmentation fault (core dumped)
gdb srcds_i486 core
(back trace)
(gdb) bt
#0 0x00000000 in ?? ()
#1 0x081012e0 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
I've performed the GDB run analysis and only get this :
(gdb) run -game testmod
Starting program: /site/servers/srcds/srcds_i486 -game testmod
[Thread debugging using libthread_db enabled]
Error while reading shared library symbols:
Cannot find new threads: generic error
Cannot find new threads: generic error
(gdb) bt
#0 0xb7fa8201 in _dl_debug_state () from /lib/ld-linux.so.2
#1 0xb7fac5d7 in ?? () from /lib/ld-linux.so.2
#2 0xb7fab04a in ?? () from /lib/ld-linux.so.2
#3 0xb7f66c19 in ?? () from /lib/tls/i686/cmov/libdl.so.2
#4 0xb7fa75d6 in ?? () from /lib/ld-linux.so.2
#5 0xb7f672bc in ?? () from /lib/tls/i686/cmov/libdl.so.2
#6 0xb7f66b51 in dlopen () from /lib/tls/i686/cmov/libdl.so.2
#7 0x0804906a in main ()
strace reveals a slight more interesting read :
19403 read(4, "\"GameInfo\"\n{\n\tName \t\t\"Test Mod"..., 4096) = 1558
19403 close(4) = 0
19403 munmap(0xb7f36000, 4096) = 0
19403 open("/site/servers/srcds/testmod/bin/server_i486.so", O_RDONLY) = 4
19403 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\23"...,
512) = 512
19403 fstat64(4, {st_mode=S_IFREG|0755, st_size=25619808, ...}) = 0
19403 mmap2(NULL, 23446372, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
4, 0) = 0xb55d0000
19403 mmap2(0xb6b3c000, 458752, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x156b) = 0xb6b3c000
19403 mmap2(0xb6bac000, 525156, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb6bac000
19403 close(4) = 0
19403 open("./bin/tier0_i486.so", O_RDONLY) = 4
19403 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\341"...,
512) = 512
19403 fstat64(4, {st_mode=S_IFREG|0644, st_size=351995, ...}) = 0
where as running hl2mp does the following : (and runs fine!)
19394 read(4, "\"GameInfo\"\r\n{\r\n\tgame\t\"Half-Life "..., 4096) = 1506
19394 close(4) = 0
19394 munmap(0xb7f4d000, 4096) = 0
19394 open("/site/servers/srcds/hl2mp/bin/server_i486.so", O_RDONLY) = 4
19394 read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\27"...,
512) = 512
19394 fstat64(4, {st_mode=S_IFREG|0644, st_size=19700876, ...}) = 0
19394 mmap2(NULL, 17492352, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
4, 0) = 0xb5b95000
19394 mmap2(0xb6aa5000, 1191936, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xf10) = 0xb6aa5000
19394 mmap2(0xb6bc8000, 506240, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb6bc8000
19394 close(4) = 0
19394 mprotect(0xb5b95000, 15794176, PROT_READ|PROT_WRITE) = 0
19394 mprotect(0xb5b95000, 15794176, PROT_READ|PROT_EXEC) = 0
19394 brk(0x8137000) = 0x8137000
19394 brk(0x8158000) = 0x8158000
19394 write(1, "Game.dll loaded for \"Half-Life 2"..., 45) = 45
..........
so not sure whats going wrong here.. LDD on my testmod .so gives
linux-gate.so.1 => (0xb7fc6000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb693a000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb6936000)
./bin/tier0_i486.so (0xb68ff000)
./bin/vstdlib_i486.so (0xb68eb000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb679c000)
/lib/ld-linux.so.2 (0xb7fc7000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb6784000)
linux make -
NAME=testmod
MOD_PROJ=../dlls/server_hl2mp-2005.vcproj
MOD_CONFIG=server_hl2mp_DebugHL2MPWin32
GAME_DIR=.
# compiler options (gcc 3.4.1 or above is required)
CC=/usr/bin/gcc-3.4
CPLUS=/usr/bin/g++-3.4
CLINK=/usr/bin/gcc-3.4
CPP_LIB="/usr/lib/gcc/i486-linux-gnu/3.4.6/libstdc++.a
/usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_eh.a"
# put any compiler flags you want passed here
USER_CFLAGS=
# link flags for your mod, make sure to include any special libraries here
LDFLAGS="-lm -ldl $(GAME_DIR)/bin/tier0_i486.so
$(GAME_DIR)/bin/vstdlib_i486.so mathlib_i486.a choreoobjects_i486.a
tier1_i486.a"
XERCES_DIR=/usr/local/xerces-c_2_8_0-x86-linux-gcc_3_4
XERCES_INC_DIR=$(XERCES_DIR)/include
XERCES_LIB_DIR=$(XERCES_DIR)/lib
GCC is :
/usr/bin/g++-3.4 -v
Reading specs from /usr/lib/gcc/i486-linux-gnu/3.4.6/specs
Configured with: ../src/configure -v --enable-languages=c,c++,f77,pascal
--prefix=/usr --libexecdir=/usr/lib
--with-gxx-include-dir=/usr/include/c++/3.4 --enable-shared
--with-system-zlib --enable-nls --without-included-gettext
--program-suffix=-3.4 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --with-tune=pentium4 i486-linux-gnu
Thread model: posix
gcc version 3.4.6 (Ubuntu 3.4.6-6ubuntu5)
again any info/help would be greatfully received!
S.
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders