티스토리 뷰

반응형

개발 환경 : VirtualBox 우분투 16.04 x86 64bit 

 
타겟 환경 : CentOS 7 minimal x86 64bit
 
개발 환경과 타겟 환경이 동일하여 비교적 쉽게 원격 디버깅을 할 수 있었습니다.
 
 
1. 준비 사항
 
- 로컬 실행 경로 : /Debug/Test
 
- 로컬 gdb 경로 : /usr/bin/gdb
 
- 타겟 실행 경로 : /Run/Test
 
- 타겟 gdbserver 실행 경로 : /Run/gdbserver
 
 개발 환경의 gdbserver 파일을 복사하여 타켓 실행 경로에 복사해 둡니다.
 
  gdb 파일은 같은 경로인 /usr/bin 폴더에 있었습니다.
 
- 타겟 환경에 ssh 설치
 
 
2. eclipse 원격 디버깅 설정
 
- 메뉴 Run - Debug Configurations 클릭
 
- C/C++ Remote Application을 더블 클릭하면 항목이 하나 생기는 이곳에 설정을 입력
 
- Main 탭
 
 (1) C/C++ Application에 로컬 실행 경로 입력
 
 (2) Connection의 New 버튼을 눌러 SSH 선택 후 Host, User, Password 를 입력  
 
 (3) Remote Absolute File Path C/C++ Application에 타켓 실행 경로 입력 
 
- Debugger 탭
 
 (1) Main 탭에서 GDB debugger에 GDB 경로 입력 (/usr/bin/gdb)
 
 (2) Gdbserver Settiongs 탭에서 Gdbserver path에 타겟 gdbserver 실행 경로 입력 
 
 
3. 디버깅 중 표준 C 소스의 내용을 찾지 못하는 경우에는 glibc-2.23.tar.gz 파일을 다운받아
 
/build/glibc-Qz8a69/ 폴더에 압축을 풀어 놓으면 해결 됩니다.
 
단, /build/glibc-Qz8a69/ 경로는 디버깅시 에러로 나오는 경로이니 다를 수 있습니다. 

4. 타켓 보드
$ yum install gdb-gdbserver
$ cp /usr/bin/gdbserver /실행파일 경로/

 

반응형

'Linux > CentOS7' 카테고리의 다른 글

etc/rc.local 파일 동작 안될 때  (0) 2019.03.20
방화벽 해제  (0) 2019.03.20
postgresql 라이브러리 설치  (0) 2019.03.20
minicom 설치 및 사용  (0) 2019.03.15
고정 IP 설정  (0) 2019.03.15
댓글
반응형
최근에 올라온 글
Total
Today
Yesterday