./Bin/rmserver: relocation error: ./Bin/rmserver: undefined symbol:
g_nTLSProcnum
Chris Shenton
chris at shenton.org
Fri Feb 3 13:44:38 PST 2006
We've been running RealMedia's Linux reallserver9 on FreeBSD-4 for years,
and now my client wants realserver11, built for Red Hat Enterprise Linux.
The binary was missing a library, so I installed what I thought was
the right thing, like:
rpm2cpio libgcc-3.3.2-6.i386.rpm | cpio --extract
It provided, in /compat/linux/usr/lib:
libgcc_s-3.3.2-20040109.so.1
libgcc_s.so.1 -> libgcc_s-3.3.2-20040109.so.1
This allowed the installer to run, but when I run the server binary
itself, it bombs:
./Bin/rmserver: relocation error: ./Bin/rmserver: undefined symbol: g_nTLSProcnum
I've attached a truss at the bottom of this message
For yucks, I copied the software to my home FreeBSD-6 machine, and
after creating a symlink for a library it wanted:
libstdc++.so.6 -> libstdc++.so.5
running it failed with exactly the same problem. Hmmmmm....
I'm out of my depth here but guessing the runtime loader isn't at the
correct version. A strings in /compat/linux/lib/ld-linux.so shows the
"relocation error" message.
-rwxr-xr-x 1 root wheel 85420 Oct 14 2004 ld-2.2.5.so
-rwxr-xr-x 1 root wheel 90212 Nov 12 2003 ld-2.3.2.so
lrwxrwxrwx 1 root wheel 11 Dec 27 15:56 ld-linux.so.2 -> ld-2.3.2.so
As I said, I'm out of my depth here.
Thanks for any clues you can provide.
root at Palimpsest(297> truss ./rmserver
linux_newuname(0xbfbff684) = 0 (0x0)
linux_brk(0x0) = 138145792 (0x83bf000)
linux_mmap(0xbfbff3e4) = 674795520 (0x28389000)
linux_open("/etc/ld.so.preload",0x0,00) ERR#2 'No such file or directory'
linux_open("/etc/ld.so.cache",0x0,00) = 3 (0x3)
linux_fstat64(0x3,0xbfbfeee4,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfeeb4) = 674799616 (0x2838a000)
close(3) = 0 (0x0)
linux_open("/lib/libdl.so.2",0x0,00) = 3 (0x3)
read(0x3,0xbfbff078,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef94,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee84) = 674811904 (0x2838d000)
linux_mmap(0xbfbfee84) = 674820096 (0x2838f000)
close(3) = 0 (0x0)
linux_open("/lib/libpthread.so.0",0x0,00) = 3 (0x3)
read(0x3,0xbfbff068,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef84,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee54) = 674824192 (0x28390000)
linux_mmap(0xbfbfee54) = 674881536 (0x2839e000)
linux_mmap(0xbfbfee54) = 674893824 (0x283a1000)
close(3) = 0 (0x0)
linux_open("/usr/lib/libstdc++.so.6",0x0,00) = 3 (0x3)
read(0x3,0xbfbff058,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef74,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee74) = 9748480 (0x94c000)
linux_mmap(0xbfbfee74) = 10665984 (0xa2c000)
linux_mmap(0xbfbfee74) = 10686464 (0xa31000)
close(3) = 0 (0x0)
linux_open("/lib/libm.so.6",0x0,00) = 3 (0x3)
read(0x3,0xbfbff048,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef64,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee54) = 675155968 (0x283e1000)
linux_mmap(0xbfbfee54) = 675287040 (0x28401000)
close(3) = 0 (0x0)
linux_open("/lib/libgcc_s.so.1",0x0,00) = 3 (0x3)
read(0x3,0xbfbff038,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef54,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee54) = 675291136 (0x28402000)
linux_mmap(0xbfbfee54) = 675319808 (0x28409000)
close(3) = 0 (0x0)
linux_open("/lib/libc.so.6",0x0,00) = 3 (0x3)
read(0x3,0xbfbff028,0x200) = 512 (0x200)
linux_fstat64(0x3,0xbfbfef44,0x28388bfc) = 0 (0x0)
linux_mmap(0xbfbfee04) = 675323904 (0x2840a000)
linux_mmap(0xbfbfee14) = 675328000 (0x2840b000)
linux_mmap(0xbfbfee14) = 676511744 (0x2852c000)
linux_mmap(0xbfbfee14) = 676528128 (0x28530000)
close(3) = 0 (0x0)
./rmserver: relocation error: ./rmserver: undefined symbol:
g_nTLSProcnum
writev(0x2,0xbfbfebc4,0xa) = 74 (0x4a)
process exit, rval = 32512
More information about the freebsd-emulation
mailing list