일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- vcore
- whatis
- 인천
- host key
- 리눅스
- 옛날 탕수육
- ubuntu22.04
- 다수 클라이언트
- 출력
- 괌여행
- Listen
- spacse
- 괌
- hostkeyalgorithms
- 인화여고
- 디버깅
- 껍질없는
- 노트북 정보
- core file
- linux
- gdb tip
- kdumo
- 칼국수
- C
- IPv6
- vi
- xshell4
- ubuntu
- 노트북 배터리 교체
- thread pid
- Today
- Total
목록디버깅 (2)
극히 개인적이고 극히 대단하지 않은
C로 프로그램을 작성하고 시험을 하다보면 수없이 많은 core 파일을 만나게 되는 경우가 있다. core 파일은 개발자 입장에서 별로 만나고 싶지 않은 파일이긴 하지만, 정상적으로 동작하지 않는 프로그램과 긴긴 시간을 씨름할 때에 있어서 core 파일은 때로는 사막에서 오아시스를 만나듯이 반가운 경우도 있다. core파일을 얼마나 능수능란하게 다루고 요긴한 명령들을 조합해서 잘 쓰는가에 따라 core파일은 개발자에게 문제를 해결할 수 있는 명쾌하고 직관적인 정보를 주기도 하지만, 그렇지 않은 경우에는 문제점에 더불어 해결해야 할 숙제를 하나 더 떠안은 것 같은 부담으로 작용할 수도 있다. core파이을 분석하기 위해 다양한 명령어를 쓰지만, 흔히 쓰지 않으면서도 알고 있으면 도움이 될만한 명령을 소개한다..
귀차니즘의 극을 달리다가 드디어 정리한다. 뭐 그리 중요하거나 대단한 기술은 아니지만, 더 머리가 굳어가기 전에 남겨두는 게 맞을 것 같아서... 코드를 작성하고 디버깅을 하다보면, 코드 어디 쯤 실행이 되고 있는 것인지 확인하는 가장 좋은 방법이 로그를 찍어보는 것이다. 그런데, 간혹 다른 사람의 코드를 디버깅하다보면 'return NOK!' 라는 출력이 있어 여기 쯤 문제가 있겠구나 하고 추정을 하게되고 'return NOK!' 라는 문자열을 소스에서 찾아보게 되는데, 'return NOK!' 라는 문자열이 이런 저런 소스에 분산되어 한 200군데에 있다면, 정말 짜증이 나지 않을 수 없다. 개인적으로 간단하게 로그의 위치를 확인하기 위해서는 잘 알려진 방법인 __func__와 __LINE__ 매크로..