2013-08-16 145 views
0

C++應用程序獲取與核心文件顯示錯誤崩潰C++應用程序崩潰

 
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff79e54000 
Core was generated by `./server'. 
Program terminated with signal 6, Aborted. 
#0 0x0000003b67230265 in raise() from /lib64/libc.so.6 
(gdb) bt 
#0 0x0000003b67230265 in raise() from /lib64/libc.so.6 
#1 0x0000003b67231d10 in abort() from /lib64/libc.so.6 
#2 0x0000003b6726a9bb in __libc_message() from /lib64/libc.so.6 
#3 0x0000003b6727247f in _int_free() from /lib64/libc.so.6 
#4 0x0000003b672728db in free() from /lib64/libc.so.6 
#5 0x00000000004060df in operator delete (p=0x20030190) at ../lib/m_string.cpp:43 
#6 0x0000000000403892 in TStr::~TStr (this=0x2102c980, __in_chrg=<value optimized out>) at ../lib/m_string.cpp:175 – 

可能能夠理解這個問題。下面是我已經驗證https://bugzilla.redhat.com/show_bug.cgi?id=959013

表明VDSO文件的大小是不夠的鏈接。這是路徑/ proc/self/maps。

請讓我知道這是什麼類型的問題,並請爲此提出修復建議。

+0

你可以編輯問題實際包括回溯? –

+0

這是問題的回溯。 (GDB)BT #0 0x0000003b67230265在從/lib64/libc.so.6 #2 0x0000003b6726a9bb在__libc_message()從/lib64/libc.so.6 #1 0x0000003b67231d10在中止()加註()從/ lib64下/ libc.so.6 #3 0x0000003b6727247f in /lib64/libc.so.6在_int_free()中 #4 0x0000003b672728db在free()from /lib64/libc.so.6中 #5 0x00000000004060df在運算符delete中(p = 0x20030190 )在../lib/m_string.cpp:43 #6 0x0000000000403892在TSTR ::〜TSTR(這= 0x2102c980,__in_chrg =在../lib/m_string.cpp:175問候<值優化了>),拉古。 – ragur

+1

現在你應該在第43行的文件'm_string.cpp'中顯示你正在做什麼(請顯示* whole *函數),並且請編輯問題**來完成它。 –

回答

2

什麼樣的問題,這是

任何崩潰內mallocfree是以前堆損壞的明確跡象。

使用ValgrindAddressSanitizer(併入GCC-4.8中)找到根本原因。

忽略vdso - 湯姆Tromey說,它沒有任何的問題。