- 论坛徽章:
- 0
|
刚刚trace了一下,得到如下的调试信息:
./strace: LD_LIBRARY_PATH=.: command not found
/mnt $ LD_LIBRARY_PATH=. ./strace ./ThunderClass
execve("./ThunderClass", ["./ThunderClass"], [/* 9 vars */]) = 0
old_mmap(NULL, 20, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ERRNO_4085 (Unknown error 4085)
stat("/etc/ld.so.cache", 0x7fec76a0) = -1 ERRNO_4005 (Unknown error 4005)
old_mmap(NULL, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfa3
old_mmap(NULL, 1261568, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ERRNO_4090 (Unknown error 4090)
old_mmap(0x2ac60000, 7844, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb0000) = -1 ERRNO_4006 (Unknown error 4006)
munmap(0x2aab4000, 16384) = -1 ERRNO_4005 (Unknown error 4005)
open("/lib/libstdc++.so.6", O_RDONLY) = -1 ERRNO_4090 (Unknown error 4090)
read(3, 0x2aab4000, 16384) = -1 ERRNO_4090Address alignment error, can't emulate
(Unknown error badvaddr=0xfffffe24, epc=0x2aee6cac
4090)
old_mmap(0x2ac64000, 1003164, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = -1 ERRNO_4090 (Unknown error 4090)
old_mmap(0x2adf8000, 9952, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xfa6
munmap(0x2aab4000, 16384) = -1 ERRNO_4005 (Unknown error 4005)
open("/lib/libm.so.0", O_RDONLY) = -1 ERRNO_4090 (Unknown error 4090)
read(3, 0x2aab4000, 16384) = -1 ERRNO_4090 (Unknown error 4090)
old_mmap(0x2adfc000, 194916, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = -1 ERRNO_4090 (Unknown error 4090)
close(3) = -1 ERRNO_4091 (Unknown error 4091)
open("./libc.so.0", O_RDONLY) = -1 ERRNO_4005 (Unknown error 4005)
old_mmap(NULL, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfa3
old_mmap(NULL, 1310720, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ERRNO_4090 (Unknown error 4090)
old_mmap(0x2afe0000, 17536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb4000) = -1 ERRNO_4090 (Unknown error 4090)
close(3) = -1 ERRNO_4091 (Unknown error 4091)
open("./libpthread.so.0", O_RDONLY) = -1 ERRNO_4005 (Unknown error 4005)
old_mmap(NULL, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfa3
old_mmap(NULL, 622592, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ERRNO_4090 (Unknown error 4090)
old_mmap(0x2b078000, 30412, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xc000) = -1 ERRNO_4090 (Unknown error 4090)
close(3) = -1 ERRNO_4091 (Unknown error 4091)
ioctl(0, TIOCNXCL, 0x7fec73a0) = -1 ERRNO_4054 (Unknown error 4054)
getpid() = -1 ERRNO_4076 (Unknown error 4076)
setrlimit(RLIMIT_STACK, {rlim_cur=2040*1024, rlim_max=1073741823}) = -1 ERRNO_4194 (Unknown error 4194)
rt_sigaction(SIGRT_1, {SIG_DFL}, NULL, 16) = -1 ERRNO_4194 (Unknown error 4194)
rt_sigprocmask(SIG_BLOCK, [RT_0], NULL, 16) = -1 ERRNO_4045 (Unknown error 4045)
brk(0x4085000) = -1 ERRNO_4004 (Unknown error 4004)
[===DEBUG===][227:main:ThunderClass.cpp] before new
write(1, "[===DEBUG===][26:ThunderClass:Th"..., 60[===DEBUG===][26:ThunderClass:ThunderClass.cpp] before init
) = -1 ERRNO_4210 (Unknown error 4210)
brk(0x408d000) = -1 ERRNO_4042 (Unknown error 4042)
clone(child_stack=0x408c0c0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND) = 4004
rt_sigprocmask(SIG_SETMASK, NULL, [RT_0], 16) = 4004
rt_sigprocmask(SIG_SETMASK, NULL, 0x7fec7980, 16) = -1 ERRNO_4199 (Unknown error 4199)
--- SIGRT_0 (Unknown signal 32) @ 0 (0) ---
sigreturn() = ? (mask now [])
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, NULL) = 4166
nanosleep({0, 20000000}, <unfinished ...>
+++ killed by SIGKILL +++
这个我还是不太明白,有人认为是c++中用到c 函数的问题, 错误定位也定位到了一个d调用c 函数的 代码上, 大家一前c++中调用C是否有类似的问题??? |
|