我想調試(使用gdb)多線程程序,其中 使用POSIX線程。像在pthread庫中缺少調試符號
我得到消息:
Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done.
貌似庫不與-g選項編譯。
我在哪裏可以找到這個庫?我試圖在網上找到它 ,但我沒有得到正確的答案...
請幫忙。
我想調試(使用gdb)多線程程序,其中 使用POSIX線程。像在pthread庫中缺少調試符號
我得到消息:
Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done.
貌似庫不與-g選項編譯。
我在哪裏可以找到這個庫?我試圖在網上找到它 ,但我沒有得到正確的答案...
請幫忙。
首先,除非你真的想進入pthread函數 - 或任何其他庫 - 你不需要該庫的調試信息。您仍然可以調試主應用程序,而無需讓自己進入庫。
如果您認爲圖書館存在問題,請深呼吸並再次查看您的代碼。大多數通用的庫(如pthread)都有非常穩定的代碼。如果您仍然想要在pthread_cond_wait()內部進行同步,請爲您的庫尋找類似「[pkg] -debuginfo」的包。它應該有你想要的。
它可能取決於你的操作系統,分配什麼。在我的Ubuntu系統上有
/usr/lib/debug/lib/libpthread-2.11.1.so
,如果你找不到你的系統DBG庫,你可以看看使用 apt-file find 'library name' | grep dbg
所需的軟件包調試版本並安裝系統所需的一個。
在基於debian的發行版中,帶有調試符號的包稱爲'* -dbg'。 (並不是說我認爲你實際上也需要調試pthread。) – Cascabel 2010-11-10 18:22:01