printf나 malloc같은 함수의 내부로 들어가는 기능을 지원하는 디버거는 없나요?
이클립스 CDT에서는 직접 만든 함수만 들어가지네요..
디버거 문제가 아니라, trace하려는 함수가 들어있는 라이브러리에 디버깅 정보 및 소스가 없기 때문입니다.
디버깅 정보를 넣는 방법은 Fedora의 경우 "fedora backtrace", gentoo의 경우 "gentoo backtrace" 등으로 google해보기 바랍니다.
소스를 설치하는 방법은 gentoo의 경우, FEATURES에 "installsources"를 넣으면 되며 나머지 배포판은 모르겠군요. 처음부터 source를 직접 컴파일하면 상관없지만...
-- C FAQ: http://www.eskimo.com/~scs/C-faq/top.html Korean Ver: http://www.cinsk.org/cfaqs/
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html Korean Ver: http://cinsk.github.io/cfaqs/
fedora 에선 *-debuginfo 패키지들을 제공합니다. 보통 *-debuginfo 라는 이름으로 repository 가 분리되어 있으며, 이렇게 분리된 경우에는 yum 의 repo 설정에 disable 이 default 로 설정됩니다.
+
첨부그림은 fedora10 에서 sudo yum -y --enablerepo=updates-debuginfo install glibc-debuginfo glibc-debuginfo-common 로 glibc debuginfo 패키지를 설치하고 ddd 로본 printf("hello world") 입니다.
OTL
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
디버거 문제가
디버거 문제가 아니라, trace하려는 함수가 들어있는 라이브러리에 디버깅 정보 및 소스가 없기 때문입니다.
디버깅 정보를 넣는 방법은 Fedora의 경우 "fedora backtrace", gentoo의 경우 "gentoo backtrace" 등으로 google해보기 바랍니다.
소스를 설치하는 방법은 gentoo의 경우, FEATURES에 "installsources"를 넣으면 되며 나머지 배포판은 모르겠군요. 처음부터 source를 직접 컴파일하면 상관없지만...
--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
fedora 에선 *-debuginfo
fedora 에선 *-debuginfo 패키지들을 제공합니다.
보통 *-debuginfo 라는 이름으로 repository 가 분리되어 있으며,
이렇게 분리된 경우에는 yum 의 repo 설정에 disable 이 default 로 설정됩니다.
+
첨부그림은 fedora10 에서
sudo yum -y --enablerepo=updates-debuginfo install glibc-debuginfo glibc-debuginfo-common
로 glibc debuginfo 패키지를 설치하고 ddd 로본 printf("hello world") 입니다.
OTL
댓글 달기