I've got a linux 2.4.26 box here running a Knoppix 3.4 distro
installed on the hard drive.  I've downloaded
http://sqlite.org/sqlite3-3.1.2.bin.gz, gunzip'ed it, chmod'ed it to
755 and renamed the .bin to sqlite3.  When I run it it segfaults.

Since this is a static executable I'm wondering if there is a basic
system configuration dependency I'm not meeting.  In the strace log
below I notice that the segfault happens just after /etc/nsswitch.conf
has been read, if that's of any consequence.

Regards,
Bill

-----------------strace sqlite3---------------------------
execve("./sqlite3", ["./sqlite3"], [/* 29 vars */]) = 0
fcntl64(0, F_GETFD)                     = 0
fcntl64(1, F_GETFD)                     = 0
fcntl64(2, F_GETFD)                     = 0
uname({sys="Linux", node="box", ...})   = 0
geteuid32()                             = 0
getuid32()                              = 0
getegid32()                             = 0
getgid32()                              = 0
brk(0)                                  = 0x810ae5c
brk(0x810ae7c)                          = 0x810ae7c
brk(0x810b000)                          = 0x810b000
brk(0x810c000)                          = 0x810c000
rt_sigaction(SIGINT, {0x804c170, [INT], SA_RESTORER|SA_RESTART,
0x809e168}, {SIG_DFL}, 8) = 0
access(":memory:", F_OK)                = -1 ENOENT (No such file or directory)
getuid32()                              = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sa_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) =
-1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40000000
read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 465
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40000000, 4096)                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=63358, ...}) = 0
old_mmap(NULL, 63358, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40000000
close(3)                                = 0
open("/lib/libnss_compat.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\22\0\000"...,
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=27304, ...}) = 0
old_mmap(NULL, 30316, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40010000
mprotect(0x40017000, 1644, PROT_NONE)   = 0
old_mmap(0x40017000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x6000) = 0x40017000
close(3)                                = 0
open("/lib/libnsl.so.1", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000<\0\000"...,
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=73528, ...}) = 0
old_mmap(NULL, 84864, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40018000
mprotect(0x4002a000, 11136, PROT_NONE)  = 0
old_mmap(0x4002a000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x11000) = 0x4002a000
old_mmap(0x4002b000, 7040, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002b000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200^\1"...,
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=1243792, ...}) = 0
brk(0x810d000)                          = 0x810d000
old_mmap(NULL, 1253956, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4002d000
mprotect(0x40155000, 41540, PROT_NONE)  = 0
old_mmap(0x40155000, 32768, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x127000) = 0x40155000
old_mmap(0x4015d000, 8772, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4015d000
close(3)                                = 0
open("/lib/tls/ld-linux.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\f\0\000"...,
1024) = 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=88936, ...}) = 0
old_mmap(NULL, 88496, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40160000
mprotect(0x40175000, 2480, PROT_NONE)   = 0
old_mmap(0x40175000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x15000) = 0x40175000
close(3)                                = 0
munmap(0x40000000, 63358)               = 0
brk(0)                                  = 0x810d000
brk(0x812e000)                          = 0x812e000
brk(0)                                  = 0x812e000
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x40000000
read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 465
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40000000, 4096)                = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++

Reply via email to