Cygwin에서의 cppunit / log4cxx의 segmentation fault

toctech의 이미지

안녕하세요,

cygwin에서 cppunit과 log4cxx를 적용한 테스팅 프로그램을 수행하는 도중에
Segmentation fault가 발생해서 문의드립니다.

메모리 릭이 발생하였는지 궁금하여 malloc - free / new - delete 쌍과
thread 종료 시점도 체크해 봤는데, 문제를 발견하지 못해서요,

gdb를 통해 확인해 본 결과 다음과 같은 메시지가 발생합니다.

Program received signal SIGSEGV, Segmentation fault.
0x07dea400 in ?? ()
(gdb) bt
#0  0x07dea400 in ?? ()
#1  0x610f7dd3 in __call_exitprocs () from /cygdrive/c/Windows/system32/cygwin1.dll
#2  0x610e1558 in exit () from /cygdrive/c/Windows/system32/cygwin1.dll
#3  0x61004dd1 in cygwin_exit () from /cygdrive/c/Windows/system32/cygwin1.dll
#4  0x610060e0 in dll_crt0_1 () from /cygdrive/c/Windows/system32/cygwin1.dll
#5  0x61004416 in _cygtls::call2 ()from /cygdrive/c/Windows/system32/cygwin1.dll
#6  0x00000000 in ?? ()
(gdb)

종료시에 문제가 발생하는걸로 봐서는 스택관련 오류라고 봐도 될까요?

아니면, 혹시라도 cygwin에 버그가 있는건 아니겠죠?

답변부탁드립니다.

=============================================================
추가 질문

다시한번 실행해 보니

Program exited with code 010300.

가 발생하는데, 이거는 뭔가요?

=============================================================
또 다시 추가 질문

연속으로 수행하니 계속 다른 메시지가 발생하네요.

    94 [sig] ###.a 3548 open_stackdumpfile: Dumping stack trace to ###.a.stackdump
 47339 [sig] ###.a 3548 _cygtls::handle_exception: Exception: STATUS_ACCESS_VIOLATION
 93215 [sig] ###.a 3548 _cygtls::handle_exception: Exception: STATUS_ACCESS_VIOLATION
 94662 [sig] ###.a 3548 _cygtls::handle_exception: Error while dumping state (probably corrupted stack)
 
Program received signal SIGSEGV, Segmentation fault.
[Switching to thread 3548.0x1454]
0x61016583 in stack_info::walk () from /cygdrive/c/Windows/system32/cygwin1.dll
(gdb) bt
#0  0x61016583 in stack_info::walk () from /cygdrive/c/Windows/system32/cygwin1.dll
#1  0x7650e7b8 in OutputDebugStringA () from /cygdrive/c/Windows/system32/cygwin1.dll
#2  0x40010006 in ?? ()
#3  0x00000000 in ?? ()

stackdump 파일이 생성되면 이 파일을 갖고 어떻게 분석해야 하나요?

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.