'프로그램 사용/gdb & insight'에 해당되는 글 16건

  1. 2009.06.26 GDB Insight FAQ - support target list
  2. 2009.06.26 insight - GDB GUI frontend
  3. 2009.06.18 gdb야 좀 대충 속아라~ 응?! 아 쫌! (6)
  4. 2009.06.18 gdb 한글 문서
  5. 2009.04.09 gdb 기동시 xterm 에러 - STLinux (2)
  6. 2009.02.16 sh4-linux-gdb 의 load 명령어
FAQ를 찾다가 대략 좌절

2.3 How do I know what targets are supported by Insight?

There is no definitive list of targets supported by each version of GDB/Insight. The best place to look to find out if your target is supported is in the configure script and the source tree of the particular version of insight you are using.

-> 번역
GDB/Insight의 각 버전별 지원 타겟의 목록은 없습니다. 가장 좋은 방법은 configure 스크립트와 소스를 뒤져보는 수밖에 없습니다. (장난해!!!!)

[링크 : http://sources.redhat.com/insight/faq.php#q-2.2]

아무튼 이미 컴파일되어 있는 sh4-linux-gdb의 경우 실행하면 아래와 같이 나온다.
# sh4-linux-gdb
GNU gdb STMicroelectronics/Linux Base 6.4-12 [build Oct 15 2006]
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu --target=sh4-linux".
(gdb)

근데.. 저렇게 타겟을 바꾸면... insight 자체가 타겟에 맞게 바뀔려나?
아니면 gdb 부분만 sh4-linux-gdb로 교체가 가능한걸려나?
Posted by 구차니

댓글을 달아 주세요

insight는 GDB를 위한 GUI 프로그램이다.

About 메뉴

웬만한 창은 다 띄워본 화면

insight의 툴바. 순서대로
실행(Run) - 함수안으로(Step) - 함수다음(Next) - 함수나오기(Finish) - 계속실행(Continue)
앞에 5개만 알아도 사용하는데 지장없을 듯 하다.

사용법은 생각보다 단순해서, Visual Studio 에서 디버깅하는 느낌이 들 정도이다.
일단 자세한 사용법은 조금 더 사용해본 뒤 +_+!

[공식 : http://sources.redhat.com/insight/index.php]
[링크 : http://vasudevkamath.blogspot.com/2008/10/gdbs-gui-insight-tutorial.html]


insight를 설치하니, insight의 도움말을 띄우는데 gdb가 나온다.
아무튼 gdb로 실행하기 보다는 그냥 insight로 실행하면 된다.(gdb -w로 하면 된다는데 안된다)

'프로그램 사용 > gdb & insight' 카테고리의 다른 글

gdb/insight configure 도움말  (0) 2009.06.26
GDB Insight FAQ - support target list  (0) 2009.06.26
insight - GDB GUI frontend  (0) 2009.06.26
gdb야 좀 대충 속아라~ 응?! 아 쫌!  (6) 2009.06.18
gdb 한글 문서  (0) 2009.06.18
gdb 기동시 xterm 에러 - STLinux  (2) 2009.04.09
Posted by 구차니

댓글을 달아 주세요


#include "stdio.h"
#include "elf.h"

void main() { Elf32_Ehdr elf_header; unsigned char magic[] = {0x7f,0x45,0x4c,0x46,0x01,0x01,0x01,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; int vma_addr = 0xA4000000; FILE *output = NULL;
memcpy(elf_header.e_ident, magic, sizeof(magic)); elf_header.e_type = ET_EXEC; elf_header.e_machine = EM_SH; elf_header.e_version = EV_CURRENT; elf_header.e_entry = vma_addr; elf_header.e_phoff = 0; elf_header.e_shoff = 0; elf_header.e_flags = EM_SH; elf_header.e_ehsize = sizeof(elf_header); elf_header.e_phentsize = 0; elf_header.e_phnum = 0; elf_header.e_shentsize = 0; elf_header.e_shnum = 0; elf_header.e_shstrndx = 0;
output = fopen("elfheader.bin","wb"); fwrite(&elf_header, sizeof(Elf32_Ehdr), 1, output); fclose(output);
}

혹시나 해서 꼼지락 대면서 gdb load 명령을 이용하여 프로그램 업로드 하기 위해
꽁수를 부려 봤는데.. 이정도 ELF 정도로는 속아주질 않는다 ㄱ-

아이디어 : load 시에 not an object file: File format not recognized 메시지는
               즉, ELF 포맷에 맞추어 제대로 된 헤더만 맞추어 주면
               원하는 메모리 번지로 임의의 파일을 올릴 수 있지 않을까?

결과 : 니미 ㄱ-

2009/02/16 - [회사일] - sh4-linux-gdb 의 load 명령어

'프로그램 사용 > gdb & insight' 카테고리의 다른 글

GDB Insight FAQ - support target list  (0) 2009.06.26
insight - GDB GUI frontend  (0) 2009.06.26
gdb야 좀 대충 속아라~ 응?! 아 쫌!  (6) 2009.06.18
gdb 한글 문서  (0) 2009.06.18
gdb 기동시 xterm 에러 - STLinux  (2) 2009.04.09
sh4-linux-gdb 의 load 명령어  (0) 2009.02.16
Posted by 구차니

댓글을 달아 주세요

  1. 비밀댓글입니다

    2016.04.03 08:49 [ ADDR : EDIT/ DEL : REPLY ]
  2. 다른 것 보다는.. 동적이던 정적이던, 그 라이브러리가 디버깅용 정보를 포함하지 않을 경우(strip 이라던가.. -pg 라던가) 브레이크가 걸리지 않는 걸로 알고 있습니다.
    stip 하지 않으시거나 디버깅이 가능한 so 라이브러리를 사용하시면 가능하지 않을까 합니다.

    2016.04.03 19:31 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 개발자 들이 디버깅을 할수 있도록 라이브러리 파일을 만든것은 절대 아닐테고 아무래도 구차니님이 생각하신 명령어 몇개가 추가 된걸로 생각합니다. 이 같은 경우는 동적 디버깅으로 라이브러리 파일을 읽어올순 없는건가요? 주소는 읽어온것 같은데 아무래도 안에 내용이 보이질 않네요 ;ㅁ;

      2016.04.03 21:06 신고 [ ADDR : EDIT/ DEL ]
    • 우분투를 사용해서 .. 우분투를 기준으로 말씀드리자면
      -dbg 라고 붙는 패키지가 있습니다. 이런녀석들로 하면 디버그 심볼들이 있어서 가능하지 않을가 합니다.
      https://wiki.ubuntu.com/Debug%20Symbol%20Packages

      2016.04.03 22:12 신고 [ ADDR : EDIT/ DEL ]
  3. 비밀댓글입니다

    2016.04.03 22:29 [ ADDR : EDIT/ DEL : REPLY ]
    • 제가 JNI를 해본적이 없어서 모르겠습니다만.. JNI에서 호출한 라이브러리만 gdb로 디버깅 하시려는건가요? 아니면 java 자체를 gdb로 디버깅을 하시는건가요?
      아무튼.. jni 라이브러리가 c언어로 된 녀석이라면... 프로세스로 gdb에서 붙여서 디버깅을 해야하나 싶습니다만.. 자바라면.. 제가 자바랑 안친해서 ㅠㅠ

      그리고 동적의 경우 윈도우는 dll 을 통해서 사용하는 방법 리눅스는 so를 통해서 사용하는 방법인데 해당 파일을 링크 해서
      파일 포인터를 얻어 쓰는 개념이라.. 하는 방법만 보고 직접 구현해서 써본적은 없습니다.
      http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html
      dlopen() / dlsym() 함수를 찾아 보시기 바랍니다.

      2016.04.04 09:10 신고 [ ADDR : EDIT/ DEL ]

[링크 : http://coffeenix.net/doc/develop/gdb.html]

'프로그램 사용 > gdb & insight' 카테고리의 다른 글

GDB Insight FAQ - support target list  (0) 2009.06.26
insight - GDB GUI frontend  (0) 2009.06.26
gdb야 좀 대충 속아라~ 응?! 아 쫌!  (6) 2009.06.18
gdb 한글 문서  (0) 2009.06.18
gdb 기동시 xterm 에러 - STLinux  (2) 2009.04.09
sh4-linux-gdb 의 load 명령어  (0) 2009.02.16
Posted by 구차니

댓글을 달아 주세요

(gdb) c
Continuing.
X connection to localhost:11.0 broken (explicit kill or server shutdown).

혹은

xterm Xt error: Can't open display:

라는 에러가 gdb를 기동할때 발생을 한다.
그래서 머하는 넘이지 하고 고심을 하다가
Xming을 설치 하고 X11 forwarding을 설정하고 실행해보았더니 아래와 같은 창이 생긴다.

머하는 놈이지?



이녀석 창이름으로 검색을 해보니 희한한게 걸려 나온다.

CROSSWORKS for MAXQ 라는 것과
debug_printf is an extension provided by CrossWorks C. 라는 내용

[출처 : http://www.rowley.co.uk/documentation/maxq_1_1/hcc_libc_debug_printf.htm]

'프로그램 사용 > gdb & insight' 카테고리의 다른 글

GDB Insight FAQ - support target list  (0) 2009.06.26
insight - GDB GUI frontend  (0) 2009.06.26
gdb야 좀 대충 속아라~ 응?! 아 쫌!  (6) 2009.06.18
gdb 한글 문서  (0) 2009.06.18
gdb 기동시 xterm 에러 - STLinux  (2) 2009.04.09
sh4-linux-gdb 의 load 명령어  (0) 2009.02.16
Posted by 구차니
TAG GDB, xterm

댓글을 달아 주세요

  1. oshyuns

    오호 gdb도 사용하시나요??? ㅋㅋ

    2009.04.20 11:23 [ ADDR : EDIT/ DEL : REPLY ]

load 라는 명령어가 gdb에 존재한다.
(gdb) help load
Dynamically load FILE into the running program, and record its symbols
for access from GDB.
A load OFFSET may also be given.

stlinux.com 에서 gdb를 이용하는 방법은, u-boot가 없을때
JTAG을 이용해서 u-boot 실행 파일을 메모리로 외부에서 올려 실행 시킬때만 사용한다.

그래서 혹시나 하는 마음에 다른 파일을 올려 볼려고 했더니..
(gdb) load /tftpboot/uImage 0xA4000000
"/tftpboot/uImage" is not an object file: File format not recognized
uImage는 커널이미지인데.. 인식을 못하고는 배째버린다.

에헤라디야. 시리얼이나 써서 느긋하게 파일을 올려야 하나.

[참고 : http://www.delorie.com/gnu/docs/gdb/gdb_171.html]

'프로그램 사용 > gdb & insight' 카테고리의 다른 글

GDB Insight FAQ - support target list  (0) 2009.06.26
insight - GDB GUI frontend  (0) 2009.06.26
gdb야 좀 대충 속아라~ 응?! 아 쫌!  (6) 2009.06.18
gdb 한글 문서  (0) 2009.06.18
gdb 기동시 xterm 에러 - STLinux  (2) 2009.04.09
sh4-linux-gdb 의 load 명령어  (0) 2009.02.16
Posted by 구차니

댓글을 달아 주세요