2011-08-26 4 views
5

ECLIPSE를 GDB의 프런트 엔드로 사용하여 소프트웨어를 디버깅하고 싶습니다. 우리의 빌드는 다음과 같이 설정됩니다.원격 서버를 통한 ECLIPSE GUI가있는 GDB?

    코드베이스와
  • 리눅스 서버
  • 윈도우 삼바 (이클립스 IDE)
  • 소프트웨어 메이크 리눅스 서버 구축을 통해 액세스하는 코드베이스 (없음 ECLIPSE 제어 여기에 해당하는 에디터의 더 지금)
  • NFS는
  • 원격 디버깅 I는 N 할 커맨드 라인 GDB

를 이용하여 (그것이 매립있어 SW)를 대상으로 마운트 빌드 환경을 바꿀 수있는 옵션이있어서 너무 많은 노력이 필요하며 Cygwin은 Linux에 비해 너무 느립니다.

서버에 액세스 할 수있는 유일한 방법은 ssh입니다. 서버에는 기본 X-Window 관리자 만 있으므로 VNC는 옵션이 아닙니다.

ECLIPSE를 편집기가 아닌 IDE로 사용할 수있는 방법이 있습니까? 주로 원격 DEBUGGING 기능을 사용하는 데 관심이 있습니다.


편집

ERROR 구축 통신

TARGET

#./mipsel-linux-gdbserver-7.1 :1234 hello 

HOST

$ gdb hello 
(gdb) target remote 10.201.122.177:1234 
Remote debugging using 10.201.122.177:1234 
warning: while parsing target description (at line 10): Target description speci 
fied unknown architecture "mips" 
warning: Could not load XML target description; ignoring 
Reply contains invalid hex digit 59 

나는 또한 Cygwin에서 소스에서 GDB 서버를 재 컴파일 시도했다 내 목표를 위해,하지만 결과도 다르지 않았다. 내 목표 아키텍처는 MIPS입니다.


가능한 또 다른 방법

내가 달성하기 위해 노력하고 무엇을 RSE (원격 시스템 탐색기) 대안인가?

답변

-1

임베디드 SW에서 실행중인 gdbserver를 통해 Windows의 Eclipse에서 디버깅 할 수 있습니다. Eclipse에서 Samba를 통해 디버깅 기호를로드해야하는데 문제가 없어야합니다.

+0

디버그 기호의 경로 정보가 잘못 표시됩니다. 내 홈 디렉토리에서 빌드하는 것처럼 소스 파일의 경로 정보는 /home/user/src/source.c이지만 Windows PC에서는 매핑 된 네트워크 드라이브가되므로 경로는 m :/src가됩니다. /source.c – Kamath

+0

gdb는 경로 대체 [set substitute-path from] (http://sourceware.org/gdb/current/onlinedocs/gdb/Source-Path.html)를 지원합니다. – ks1322

+0

자 이제 cygwin에서 명령 줄 디버깅을 시도했습니다. GDB 버전은 7.3.50.20110821-cvs입니다. 나는 표적과의 의사 소통을 얻을 수 없다. 수정 된 메시지로 업데이트되었습니다. – Kamath

5

대상 설명을 알 수없는 구조 "MIPS"

귀하의 목표는 (분명히)에는 mipsel-리눅스를 지정했습니다.

귀하의 GDB는 (아마도) native linux-i386 또는 linux-x86_64입니다. 당신은 당신의 GDB 디버그에는 mipsel-리눅스 대상 위하여

(gdb) show version 
... 
This GDB was configured as "x86_64-linux". 

구성 방식을 볼 수 있습니다, 당신은 대신 그 GDB를 호출하기 위해 Eclipse를 (--host=x86_64-linux --target=mipsel-linux 또는 일부 등) 크로스 GDB를 구축하고 얻을 필요 네이티브 한.

+0

cross-gdb를 만드는 방법에 대한 자세한 내용은 여기에 있습니다. https://sourceware.org/gdb/wiki/BuildingCrossGDBGGserver – Pradyumna

0

원격 Linux 시스템에서 ssh 서버를 사용하십시오. dropbear. 그리고 나서 ssh를 통한 디버깅 제거를 위해 eclipse를 프론트 엔드로 사용할 수 있습니다.

+0

솔루션을 더 명확하게 설명해 주시겠습니까? – abarisone

관련 문제