CentOS에 corosync 패키지의 디버깅 기호를 설치하는 방법은 무엇입니까?

CentOS에 corosync 패키지의 디버깅 기호를 설치하는 방법은 무엇입니까?

충돌이 발생하여 corosyncgdb에서 보고 싶습니다. 그러나 현재 코어 덤프에는 너무 많은 정보만 표시됩니다.

Debug logs for core.1385 (Generated on Jul 26 10:17 BST)

[Thread debugging using libthread_db enabled]
Core was generated by `corosync -f'.
Program terminated with signal 6, Aborted.
#0 0x00007f68b2783495 in raise () from /lib64/libc.so.6
#0 0x00007f68b2783495 in raise () from /lib64/libc.so.6
#1 0x00007f68b2784c75 in abort () from /lib64/libc.so.6
#2 0x00007f68b277c60e in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007f68b277c6d0 in __assert_fail () from /lib64/libc.so.6
#4 0x00007f68b3530f2c in ?? () from /usr/lib64/libtotem_pg.so.4
#5 0x00007f68b3534eaf in ?? () from /usr/lib64/libtotem_pg.so.4
#6 0x00007f68b3535259 in ?? () from /usr/lib64/libtotem_pg.so.4
#7 0x00007f68b352f108 in rrp_deliver_fn () from /usr/lib64/libtotem_pg.so.4
#8 0x00007f68b352be2a in ?? () from /usr/lib64/libtotem_pg.so.4
#9 0x00007f68b3524482 in poll_run () from /usr/lib64/libtotem_pg.so.4
#10 0x00000000004079b6 in main ()

내 생각에는 디버그 정보 패키지가 corosync무엇이든 설치해야 할 것 같습니다 libtotem_pg.so.4. 어떻게 해야 하나요?

답변1

일반적으로 시작할 때 gdb필요한 디버깅 기호를 설치하는 방법을 알려주는 메시지가 표시됩니다.

예를 들어:

# gdb /usr/sbin/corosync
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-110.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/corosync...Reading symbols from /usr/sbin/corosync...(no debugging symbols found)...done.
(no debugging symbols found)...done.
Missing separate debuginfos, use: debuginfo-install corosync-2.4.3-2.el7_5.1.x86_64
(gdb) 

프롬프트 앞의 마지막 줄을 참조하십시오.

Missing separate debuginfos, use: debuginfo-install corosync-2.4.3-2.el7_5.1.x86_64

따라서 이 경우 gdb가 아닌 셸에서 다음 명령을 실행하여 디버깅 기호를 설치할 수 있습니다.

debuginfo-install corosync-2.4.3-2.el7_5.1.x86_64

사용 중인 CentOS 버전을 지정하지 않았습니다. 위 내용은 CentOS 7의 경우입니다. CentOS 6에서도 같은 방식으로 작동하지만 라이브러리 버전이 다르기 때문에 명령을 잘라내어 붙여 넣을 수 없습니다.

관련 정보