2010-02-09 5 views
0

Eclipse/CDT에서 새로 개발되었으며 gcc/gdb에 익숙하지 않았습니다.첨부 파일이있는 CDT, SCons 및 디버그

내 프로젝트 (공유 라이브러리)는 SCons를 사용하여 Eclipse에서 빌드됩니다. 생성 된 .so는 SCons 스크립트의 끝에 다른 장소로 복사됩니다 (아마도 중요한 포인트입니다).

내 응용 프로그램은 사용자가 호스트 응용 프로그램에서로드해야하는 플러그인입니다. 그래서 호스트 응용 프로그램을 시작하고 플러그인/라이브러리를로드 한 다음 디버그 세션을 호스트 응용 프로그램에 연결하려고합니다 (필자가 생각하기에 그렇게 생각합니다).

디버그 구성을 만들었습니다. 내 구성을 만들려면 "C/C++ 응용 프로그램에 연결"을 선택했습니다. 메인 탭에서 SCons 스크립트를 호출하는 빌드 구성과 프로젝트를 설정하고 "C/C++ 응용 프로그램"에 대해 호스트 응용 프로그램에 대한 경로를 지정합니다.

하지만 작동하지 않습니다. 어쩌면 생성 된 .so의 위치 때문일 수도 있습니다. Builder 설정에서 빌드 위치는 $ {workspace_loc :/myProjectName}입니다. workspace_loc이 내 프로젝트 루트를 의미하는 것으로 알고 있어도이 구문을 이해할 수 없습니다. 어쨌든, iot는 SCons 파일이 .so를 생성하는 곳과 관련이 없습니다. 어쩌면 그것이 문제의 근원일까요?

도움 주셔서 감사합니다. 이클립스 문서는 이러한 점에 대해 꽤 잘 알고있다.

업데이트 : 다음 오류가 발생합니다. ptrace : 작업이 허용되지 않습니다.

답변

0

음, 실제로 작동합니다. 그러나 잘. gdb가 호스트 프로세스에 연결하는 데 약 15 초가 걸립니다.

.gdbinit : 해당 파일이나 디렉토리

이 지연 후, 나는이 추적을 얻을. (찾지 디버깅 심볼 없음) 를 (찾지 디버깅 심볼) 25,678 (찾지 디버깅 심볼) (NO 디버깅 심볼 있음) (NO 디버깅 심볼 있음) (NO 디버깅 심볼 있음) 부착되지 (NO 디버깅 심볼 발견) (더 디버깅 심볼)를 발견 (더 디버깅 심볼)

를 발견하지만 난 여전히 디버깅 할 수 없습니다 : 첨부 파일이 완료되면 GDB는 호스트 응용 프로그램과 함께, 정지 때문에는 "다시 시작"을 할 필요가 동결 . 그래서 추락했다고 생각했습니다.

저는 아직도 너무 오래 붙어있는 이유를 찾아야합니다.

+0

나는 이클립스의 이런면을 혼란에 빠뜨리고 아주 이상한 오류가 발생했다. 시작 구성에서 응용 프로그램과 프로젝트에 대해 작성한 내용은 무엇입니까? 시작 구성의 다른 구성은 무엇입니까? –

관련 문제