.c 파일을 컴파일 하고 실행했습니다.
세그멘테이션 오류라고 에러가 났는데,
core 파일이 생기지 않습니다.
linux에서/커널컴파일에서 core 파일이 생기게 하는 옵션이 있다고 들은것 같습니다.
고수님들 debugging을 위해 core를 확인하고 싶은데 부탁 드립니다..
도와 주세요.
보통 리눅스 부팅시에 코어 화일을 만들지 않도록 세팅되어 있다. 하지만 코어화일 생성을 가능케 하려고 한다면 그것을 다시 가능케 하는 셸의 내장 명령을 사용한다.
셸 호환 셸(예. tcsh)을 쓰고 있다면 다음과 같이 명령을 내린다.
% limit core unlimited
만약 본셸류(sh, bash, zsh, pdksh)를 사용하고 있다면,
$ ulimit -c unlimited
만약 코어 화일의 이름에 대하여 융통성을 가지고 싶다면, 커널 소스를 약간만 변경해주면 된다. 자, fs/binfmt_aout.c와 fs/binfmt_elf.c와 같은 화일을 찾아보자.
memcpy(corefile,"core.",5); #if 0 memcpy(corefile+5,current->comm,sizeof(current->comm)); #else corefile[4] = '\0'; #endif
grep 같은 것을 가지고 이런 부분을 모두 찾은 후에 0이라고 되어 있는 것을 1이라고 모두 고쳐준다.
============
kldp 검색 결과
white color에서 gold color로 가는길..
텍스트 포맷에 대한 자세한 정보
<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]
보통 리눅스 부팅시에 코어 화일을 만들지 않도록 세팅되어 있다. 하지만
보통 리눅스 부팅시에 코어 화일을 만들지 않도록 세팅되어 있다. 하지만 코어화일 생성을 가능케 하려고 한다면 그것을 다시 가능케 하는 셸의 내장 명령을 사용한다.
셸 호환 셸(예. tcsh)을 쓰고 있다면 다음과 같이 명령을 내린다.
% limit core unlimited
만약 본셸류(sh, bash, zsh, pdksh)를 사용하고 있다면,
$ ulimit -c unlimited
만약 코어 화일의 이름에 대하여 융통성을 가지고 싶다면, 커널 소스를 약간만 변경해주면 된다. 자, fs/binfmt_aout.c와 fs/binfmt_elf.c와 같은 화일을 찾아보자.
memcpy(corefile,"core.",5);
#if 0
memcpy(corefile+5,current->comm,sizeof(current->comm));
#else
corefile[4] = '\0';
#endif
grep 같은 것을 가지고 이런 부분을 모두 찾은 후에 0이라고 되어 있는 것을 1이라고 모두 고쳐준다.
============
kldp 검색 결과
white color에서 gold color로 가는길..
댓글 달기