I am using (or am trying to use) c::b under Linux (SuSE 10.0).
For sereral svn releases (more than 50) I observe the following behaviour. svr release is now 3615.
1) Startup: c::b toggles between:
a) hangs during startup, splash is visible. I have to kill/cancel c::b
b) starts an deletes the lock file (I allowed one instance of c::b only), then runs
I.e. starting c::b I get ...a) b) a) b) a) ....
2) Quit: Runs in a segmentation fault or does a pure virtual method call. This is logged on console (stderr?).
I am aware that all this is not very helpful to fix the problem(s). I ran c::b from gdb and post the log below. Maybe that helps a bit more in finding the bug. Perhaps you can tell me what I can do in addition in order to get more info to supply you with.
berlios.de is not available at present, so I post here.
GNU DDD 3.3.11 (i386-suse-linux), by Dorothea LUsing host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) run
[Thread debugging using libthread_db enabled]
[New Thread 1097871328 (LWP 25422)]
[New Thread 1130122160 (LWP 25429)]
[New Thread 1132223408 (LWP 25430)]
[New Thread 1134324656 (LWP 25431)]
[New Thread 1136425904 (LWP 25432)]
[New Thread 1139628976 (LWP 25433)]
[New Thread 1147866032 (LWP 25434)]
[New Thread 1152658352 (LWP 25437)]
[Thread 1152658352 (zombie) exited]
[Thread 1147866032 (zombie) exited]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1139628976 (LWP 25433)]
0x40b4c918 in wxStringBase::ConcatSelf () from /usr/lib/libwx_baseu-2.6.so.0
(gdb) r
warning: cannot close "system-supplied DSO at 0xffffe000": File in wrong format
[Thread debugging using libthread_db enabled]
[New Thread 1097871328 (LWP 25439)]
[New Thread 1130122160 (LWP 25444)]
[New Thread 1132223408 (LWP 25445)]
[New Thread 1134324656 (LWP 25446)]
[New Thread 1136425904 (LWP 25447)]
[New Thread 1139628976 (LWP 25448)]
[New Thread 1147866032 (LWP 25449)]
[New Thread 1153436592 (LWP 25452)]
[Thread 1153436592 (zombie) exited]
[New Thread 1153436592 (LWP 25453)]
[New Thread 1176325040 (LWP 25454)]
[Thread 1176325040 (zombie) exited]
[Thread 1153436592 (zombie) exited]
[New Thread 1153436592 (LWP 25455)]
[New Thread 1176325040 (LWP 25456)]
[Thread 1176325040 (zombie) exited]
[Thread 1153436592 (zombie) exited]
[Thread 1139628976 (zombie) exited]
[Thread 1147866032 (zombie) exited]
Program exited normally.
(gdb) r
warning: cannot close "system-supplied DSO at 0xffffe000": File in wrong format
[Thread debugging using libthread_db enabled]
[New Thread 1097871328 (LWP 25457)]
[New Thread 1130122160 (LWP 25462)]
[New Thread 1132223408 (LWP 25463)]
[New Thread 1134324656 (LWP 25464)]
[New Thread 1136425904 (LWP 25465)]
[New Thread 1139628976 (LWP 25466)]
[New Thread 1147866032 (LWP 25467)]
^C
Program received signal SIGINT, Interrupt.
[Switching to Thread 1097871328 (LWP 25457)]
0x40b8c760 in wxPipeInputStream::CanRead () from /usr/lib/libwx_baseu-2.6.so.0
(gdb)
Notes:
-- The DSO warning probably comes from gdb or ddd.
-- The SIGSEGV occurs after I exit c::b via File->Quit. I did not do anything with c::b except start it and quit it.
-- The SIGINT comes from the debugger (CTRL_C) after some time of c::b's freeze.
A more informative log:
GNU DDD 3.3.11 (i386-suse-linux), by Dorothea LUsing host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) run
warning: cannot close "system-supplied DSO at 0xffffe000": File in wrong format
[Thread debugging using libthread_db enabled]
[New Thread 1097871328 (LWP 25601)]
[New Thread 1130122160 (LWP 25606)]
[New Thread 1132223408 (LWP 25607)]
[New Thread 1134324656 (LWP 25608)]
[New Thread 1136425904 (LWP 25609)]
[New Thread 1139628976 (LWP 25610)]
[New Thread 1147866032 (LWP 25611)]
^C
Program received signal SIGINT, Interrupt.
[Switching to Thread 1097871328 (LWP 25601)]
0x40b8c77a in wxPipeInputStream::CanRead () from /usr/lib/libwx_baseu-2.6.so.0
(gdb) # Interrupt because c::b hangs in splash
(gdb) bt
#0 0x40b8c77a in wxPipeInputStream::CanRead () from /usr/lib/libwx_baseu-2.6.so.0
#1 0x4086bdca in wxGUIAppTraits::WaitForChild () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#2 0x40b8ce70 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#3 0x40b8d524 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#4 0x40b8b058 in wxGetDataDir () from /usr/lib/libwx_baseu-2.6.so.0
#5 0x43c85154 in NativeParser::GetGCCCompilerDirs (this=0x82f5cb0, cpp_compiler=@0x88f7380, base=@0xbfc97ba8) at nativeparser.cpp:439
#6 0x43c85dd3 in NativeParser::AddCompilerDirs (this=0x82f5cb0, parser=0x82f5cd8, project=0x87204e8) at nativeparser.cpp:406
#7 0x43c869ea in NativeParser::AddParser (this=0x82f5cb0, project=0x87204e8, useCache=true) at nativeparser.cpp:502
#8 0x43c6cce3 in CodeCompletion::OnStartParsingProjects (this=0x82f5c60, event=@0xbfc97d64) at codecompletion.cpp:977
#9 0x40af5ee5 in wxAppConsole::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#10 0x40b87ad3 in wxEvtHandler::ProcessEventIfMatches () from /usr/lib/libwx_baseu-2.6.so.0
#11 0x40b87cdf in wxEventHashTable::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#12 0x40b87ebf in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.6.so.0
#13 0x4099f95b in wxTimerBase::Notify () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#14 0x40898cb5 in wxTimer::Start () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#15 0x41406106 in g_main_context_wakeup () from /opt/gnome/lib/libglib-2.0.so.0
#16 0x4140435c in g_main_context_dispatch () from /opt/gnome/lib/libglib-2.0.so.0
#17 0x414077cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#18 0x41407ce7 in g_main_context_iteration () from /opt/gnome/lib/libglib-2.0.so.0
#19 0x40f08f75 in gtk_main_iteration () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#20 0x40873175 in wxApp::Yield () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#21 0x40b8a332 in wxYieldIfNeeded () from /usr/lib/libwx_baseu-2.6.so.0
#22 0x409d96db in wxGenericTreeCtrl::ScrollTo () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#23 0x409df408 in wxGenericTreeCtrl::EnsureVisible () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#24 0x409df651 in wxGenericTreeCtrl::DoSelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#25 0x409dfa3b in wxGenericTreeCtrl::SelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#26 0x4019762c in EditorManager::RebuildOpenedFilesTree (this=0x838af68, tree=0x84e09a8) at editormanager.cpp:2711
#27 0x4022aa79 in ProjectManager::LoadProject (this=0x83b1c50, filename=@0xbfc982c8, activateIt=true) at projectmanager.cpp:770
#28 0x40265a8f in WorkspaceLoader::Open (this=0x85127f0, filename=@0xbfc98334, Title=@0xbfc98330) at workspaceloader.cpp:116
#29 0x4013deed in cbWorkspace::Load (this=0x963c1d0) at cbworkspace.cpp:104
#30 0x4013e74b in cbWorkspace (this=0x963c1d0, filename=@0x404c63b0) at cbworkspace.cpp:66
#31 0x4022a487 in ProjectManager::LoadWorkspace (this=0x83b1c50, filename=@0x404c63b0) at projectmanager.cpp:1044
#32 0x08069e8e in CodeBlocksApp::InitFrame (this=0x8127678) at app.cpp:338
#33 0x0806a7fe in CodeBlocksApp::OnInit (this=0x8127678) at app.cpp:488
#34 0x0806be3f in wxAppConsole::CallOnInit (this=0x8cf0df8) at app.h:87
#35 0x40b2cc60 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#36 0x40b2cd36 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#37 0x080670a4 in main (argc=1, argv=0xbfc98694) at app.cpp:190
(gdb) r
warning: cannot close "system-supplied DSO at 0xffffe000": File in wrong format
[Thread debugging using libthread_db enabled]
[New Thread 1097871328 (LWP 25662)]
[New Thread 1130122160 (LWP 25667)]
[New Thread 1132223408 (LWP 25668)]
[New Thread 1134324656 (LWP 25669)]
[New Thread 1136425904 (LWP 25670)]
[New Thread 1139628976 (LWP 25671)]
[New Thread 1147866032 (LWP 25672)]
[New Thread 1152310192 (LWP 25675)]
[Thread 1152310192 (zombie) exited]
[Thread 1147866032 (zombie) exited]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1139628976 (LWP 25671)]
0x40b4c918 in wxStringBase::ConcatSelf () from /usr/lib/libwx_baseu-2.6.so.0
(gdb) # The SIGSEGV comes after File->Quit
(gdb) bt
#0 0x40b4c918 in wxStringBase::ConcatSelf () from /usr/lib/libwx_baseu-2.6.so.0
#1 0x43caad95 in BasicSearchTree::AddNode (this=0x918723c, s=@0x9b65c24, nparent=0) at string.h:280
#2 0x43cab587 in BasicSearchTree::insert (this=0x918723c, s=@0x9b65c24) at searchtree.cpp:821
#3 0x43c9e333 in TokensTree::GetFileIndex (this=0x91871f8, filename=@0x9b65c24) at token.cpp:919
#4 0x43c9e412 in TokensTree::FlagFileAsParsed (this=0x91871f8, filename=@0x9b65c24) at token.cpp:998
#5 0x43c9e157 in ParserThread::Parse (this=0x9b65bb8) at parserthread.cpp:352
#6 0x43c9e2fc in ParserThread::Execute (this=0x9b65bb8) at parserthread.h:70
#7 0x4013cc1f in cbThreadPool::cbWorkerThread::Entry (this=0x828bc70) at cbthreadpool.cpp:220
#8 0x40b86af6 in wxThreadInternal::PthreadStart () from /usr/lib/libwx_baseu-2.6.so.0
#9 0x40b86b6d in wxPthreadStart () from /usr/lib/libwx_baseu-2.6.so.0
#10 0x40bef297 in start_thread () from /lib/tls/libpthread.so.0
#11 0x40ce437e in clone () from /lib/tls/libc.so.6
#12 0x43ed5bb0 in ?? ()
(gdb)
As stated above, svn was 3615. (In Germany we say "Man sieht den Wald vor lauter Bäumen nicht.", i.e. "You do not see the forest because of all the trees" ;-))
I removed the trunk completely, checked out again and rebuilt c::b with --enable-contrib, svn is now 3627.
The problem persists. The very first run of c::b hangs; after 3 Minutes I cancelled it...
GNU DDD 3.3.11 (i386-suse-linux), by Dorothea LUsing host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) # run c::b from within gdb after the mentioned hang (svn 3627, 2nd run after compete rebuilt from scratch)
(gdb) r
[Thread debugging using libthread_db enabled]
[New Thread 1097883616 (LWP 6957)]
[New Thread 1130134448 (LWP 6964)]
[New Thread 1132235696 (LWP 6965)]
[New Thread 1134336944 (LWP 6966)]
[New Thread 1136438192 (LWP 6967)]
[New Thread 1139641264 (LWP 6968)]
[New Thread 1147878320 (LWP 6969)]
[New Thread 1154485168 (LWP 6972)]
[Thread 1154485168 (zombie) exited]
[Thread 1147878320 (zombie) exited]
[Thread 1139641264 (zombie) exited]
Program exited normally.
(gdb) r
warning: cannot close "system-supplied DSO at 0xffffe000": File in wrong format
[Thread debugging using libthread_db enabled]
[New Thread 1097883616 (LWP 6973)]
[New Thread 1130134448 (LWP 6978)]
[New Thread 1132235696 (LWP 6979)]
[New Thread 1134336944 (LWP 6980)]
[New Thread 1136438192 (LWP 6981)]
[New Thread 1139641264 (LWP 6982)]
[New Thread 1147878320 (LWP 6983)]
^C
Program received signal SIGINT, Interrupt.
[Switching to Thread 1097883616 (LWP 6973)]
0x40af8b75 in ?? () from /usr/lib/libwx_baseu-2.6.so.0
(gdb) # after ca. 3 minutes of loitering around -> Cancel
(gdb) bt
#0 0x40af8b75 in ?? () from /usr/lib/libwx_baseu-2.6.so.0
#1 0x40b8f77a in wxPipeInputStream::CanRead () from /usr/lib/libwx_baseu-2.6.so.0
#2 0x4086edca in wxGUIAppTraits::WaitForChild () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#3 0x40b8fe70 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#4 0x40b90524 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#5 0x40b8e058 in wxGetDataDir () from /usr/lib/libwx_baseu-2.6.so.0
#6 0x43c88154 in NativeParser::GetGCCCompilerDirs (this=0x828e4f8, cpp_compiler=@0x86c2e90, base=@0xbfe07248) at nativeparser.cpp:439
#7 0x43c88dd3 in NativeParser::AddCompilerDirs (this=0x828e4f8, parser=0x828e520, project=0x871e430) at nativeparser.cpp:406
#8 0x43c899ea in NativeParser::AddParser (this=0x828e4f8, project=0x871e430, useCache=true) at nativeparser.cpp:502
#9 0x43c6fce3 in CodeCompletion::OnStartParsingProjects (this=0x828e4a8, event=@0xbfe07404) at codecompletion.cpp:977
#10 0x40af8ee5 in wxAppConsole::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#11 0x40b8aad3 in wxEvtHandler::ProcessEventIfMatches () from /usr/lib/libwx_baseu-2.6.so.0
#12 0x40b8acdf in wxEventHashTable::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#13 0x40b8aebf in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.6.so.0
#14 0x409a295b in wxTimerBase::Notify () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#15 0x4089bcb5 in wxTimer::Start () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#16 0x41409106 in g_main_context_wakeup () from /opt/gnome/lib/libglib-2.0.so.0
#17 0x4140735c in g_main_context_dispatch () from /opt/gnome/lib/libglib-2.0.so.0
#18 0x4140a7cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#19 0x4140ace7 in g_main_context_iteration () from /opt/gnome/lib/libglib-2.0.so.0
#20 0x40f0bf75 in gtk_main_iteration () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#21 0x40876175 in wxApp::Yield () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#22 0x40b8d332 in wxYieldIfNeeded () from /usr/lib/libwx_baseu-2.6.so.0
#23 0x409dc6db in wxGenericTreeCtrl::ScrollTo () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#24 0x409e2408 in wxGenericTreeCtrl::EnsureVisible () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#25 0x409e2651 in wxGenericTreeCtrl::DoSelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#26 0x409e2a3b in wxGenericTreeCtrl::SelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#27 0x40197b6c in EditorManager::RebuildOpenedFilesTree (this=0x91a7d00, tree=0x84e4f68) at editormanager.cpp:2711
#28 0x4022b749 in ProjectManager::LoadProject (this=0x8a5e598, filename=@0xbfe07968, activateIt=true) at projectmanager.cpp:770
#29 0x4026716f in WorkspaceLoader::Open (this=0x8685860, filename=@0xbfe079d4, Title=@0xbfe079d0) at workspaceloader.cpp:116
#30 0x4013e68d in cbWorkspace::Load (this=0x9648388) at cbworkspace.cpp:104
#31 0x4013eeeb in cbWorkspace (this=0x9648388, filename=@0x404c9010) at cbworkspace.cpp:66
#32 0x4022b157 in ProjectManager::LoadWorkspace (this=0x8a5e598, filename=@0x404c9010) at projectmanager.cpp:1044
#33 0x08069e8e in CodeBlocksApp::InitFrame (this=0x81275f8) at app.cpp:338
#34 0x0806a7fe in CodeBlocksApp::OnInit (this=0x81275f8) at app.cpp:488
#35 0x0806be3f in wxAppConsole::CallOnInit (this=0x93971f8) at app.h:87
#36 0x40b2fc60 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#37 0x40b2fd36 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#38 0x080670a4 in main (argc=1, argv=0xbfe07d34) at app.cpp:190
(gdb)
In SVN 3811, I still observe this problem (hang on startup) over the last weeks.
Seems that the problem occurs in several places, all of them involving some kind of yield():
#0 0x08066de8 in ?? ()
#1 0x4130c2df in wxYield () from /usr/lib/libwx_baseu-2.6.so.0
#2 0x40fecdf9 in wxGUIAppTraits::WaitForChild () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#3 0x4130ee70 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#4 0x4130f524 in wxExecute () from /usr/lib/libwx_baseu-2.6.so.0
#5 0x4130d058 in wxGetDataDir () from /usr/lib/libwx_baseu-2.6.so.0
#6 0x43cb7174 in NativeParser::GetGCCCompilerDirs (this=0x8938590, cpp_compiler=@0x88d37a0, base=@0xbfeb25c8) at nativeparser.cpp:439
#7 0x43cb7df3 in NativeParser::AddCompilerDirs (this=0x8938590, parser=0x89385b8, project=0x868fec8) at nativeparser.cpp:406
#8 0x43cb8a0a in NativeParser::AddParser (this=0x8938590, project=0x868fec8, useCache=true) at nativeparser.cpp:502
#9 0x43c9ed03 in CodeCompletion::OnStartParsingProjects (this=0x8938540, event=@0xbfeb2784) at codecompletion.cpp:977
#10 0x41277ee5 in wxAppConsole::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#11 0x41309ad3 in wxEvtHandler::ProcessEventIfMatches () from /usr/lib/libwx_baseu-2.6.so.0
#12 0x41309cdf in wxEventHashTable::HandleEvent () from /usr/lib/libwx_baseu-2.6.so.0
#13 0x41309ebf in wxEvtHandler::ProcessEvent () from /usr/lib/libwx_baseu-2.6.so.0
#14 0x4112095b in wxTimerBase::Notify () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#15 0x41019cb5 in wxTimer::Start () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#16 0x404ed106 in g_main_context_wakeup () from /opt/gnome/lib/libglib-2.0.so.0
#17 0x404eb35c in g_main_context_dispatch () from /opt/gnome/lib/libglib-2.0.so.0
#18 0x404ee7cb in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#19 0x404eece7 in g_main_context_iteration () from /opt/gnome/lib/libglib-2.0.so.0
#20 0x4015df75 in gtk_main_iteration () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#21 0x40ff4175 in wxApp::Yield () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#22 0x4130c332 in wxYieldIfNeeded () from /usr/lib/libwx_baseu-2.6.so.0
#23 0x4115a6db in wxGenericTreeCtrl::ScrollTo () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#24 0x41160408 in wxGenericTreeCtrl::EnsureVisible () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#25 0x41160651 in wxGenericTreeCtrl::DoSelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#26 0x41160a3b in wxGenericTreeCtrl::SelectItem () from /usr/lib/libwx_gtk2u_core-2.6.so.0
#27 0x4090009c in EditorManager::RebuildOpenedFilesTree (this=0x8a4f118, tree=0x835fbd8) at editormanager.cpp:2699
#28 0x409961e9 in ProjectManager::LoadProject (this=0x8b33448, filename=@0xbfeb2ce8, activateIt=true) at projectmanager.cpp:820
#29 0x409d263f in WorkspaceLoader::Open (this=0x868ee00, filename=@0xbfeb2d54, Title=@0xbfeb2d50) at workspaceloader.cpp:116
#30 0x408a67fd in cbWorkspace::Load (this=0x87d8d18) at cbworkspace.cpp:104
#31 0x408a705b in cbWorkspace (this=0x87d8d18, filename=@0x40c473f4) at cbworkspace.cpp:66
#32 0x40997937 in ProjectManager::LoadWorkspace (this=0x8b33448, filename=@0x40c473f4) at projectmanager.cpp:1102
#33 0x0806aa4e in CodeBlocksApp::InitFrame (this=0x812c128) at app.cpp:357
#34 0x0806b4e4 in CodeBlocksApp::OnInit (this=0x812c128) at app.cpp:496
#35 0x0806cd4f in wxAppConsole::CallOnInit (this=0x80ecba8) at app.h:87
#36 0x412aec60 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#37 0x412aed36 in wxEntry () from /usr/lib/libwx_baseu-2.6.so.0
#38 0x08067834 in main (argc=1, argv=0xbfeb30b4) at app.cpp:199
(gdb)