Seer - Linux용 gdb에 대한 GUI 프런트엔드입니다. (어니 파스비어 [email protected])
이 프로젝트는 활발히 진행되고 있습니다. 목표는 gdb에 대한 간단하면서도 즐거운 GUI입니다.
버그나 원하는 기능을 제 이메일로 보고하시거나 제 GitHub 프로젝트 페이지에서 작업을 생성해주세요.
Seer는 패키지 관리자 또는 소스에서 설치할 수 있습니다.
메모
설치하기 전에 요구 사항이 충족되는지 확인하십시오.
리눅스
C++17
"mi" 인터프리터가 있는 gdb(실행하여 확인: gdb --interpreter=mi
)
CMake(3.1.0 이상)
QT6
QT5
다음 패키지 관리자를 통해 사용할 수 있습니다.
pamac install seer
zypper install seergdb
(권장) 아래 지침에 따라 Qt6를 사용하여 Seer를 구축할 수 있습니다.
https://github.com/epasveer/seer/wiki/Building-Seer---Qt6
당분간은 아래 지침에 따라 Qt5로 구축할 수 있습니다.
https://github.com/epasveer/seer/wiki/Building-Seer---Qt5
github에서 Seer의 Wiki 페이지를 확인하세요.
다양한 예언자 보기 및 대화 상자의 예.
Seer의 기본 보기는 다음과 같습니다.
소스/함수/유형/변수/라이브러리
변수/레지스터 정보
코드 관리자.
중단점, Watchpoint, Catchpoint, Printpoint, 수동 gdb 명령 및 로그.
스택 프레임 정보.
스레드 정보.
Gdb의 역방향 디버깅 모드를 지원합니다.
실행 파일 열기 대화 상자가 호출되면 다음과 같습니다.
실행 파일의 모든 텍스트 출력은 Seer 콘솔로 이동됩니다. 실행 파일에 대한 텍스트 입력은 콘솔을 통해서도 입력할 수 있습니다.
일반적으로 Seer는 소스 코드를 코드 관리자의 탭으로 표시합니다. 프로그램의 어셈블리를 탭으로 표시할 수도 있습니다.
"보기->어셈블리 보기"를 선택하면 현재 실행 중인 어셈블리를 보여주는 소스 코드 탭 옆에 추가 탭이 표시됩니다. 여기에 예가 있습니다.
소스 코드 탭과 마찬가지로 어셈블리 탭에서도 중단점을 설정할 수 있습니다. 현재 명령이 강조 표시됩니다.
"중단점" 탭과 "스택 프레임" 탭의 항목을 두 번 클릭하면 해당 주소에 대한 어셈블리가 표시됩니다.
구성 설정에 정의된 대로 "Nexti" 및 "Stepi" 단축키가 있습니다. 일반적으로 "Ctrl+F5" 및 "CTRL+F6"입니다. 어셈블리 탭에서 "^F"를 사용하면 강력한 검색창이 표시됩니다.
Seer의 조립 기능은 새로운 기능입니다. 변경 사항/기능을 자유롭게 제안해 주세요.
Memory Visualizer에서 원시 메모리의 내용을 보면 다음과 같습니다.
메모리 | 분해 |
---|---|
![]() | ![]() |
Array Visualizer에서 배열의 내용을 보면 다음과 같습니다.
정상 | 운형자 | 소수 |
---|---|---|
![]() | ![]() | ![]() |
두 개의 배열을 XY 플롯으로 사용할 수 있습니다. 예를 들어, 이 간단한 '점' 배열은 모양의 XY 윤곽선을 형성합니다.
int main() {
int points[] = {50,1,20,91,97,35,2,35,79,91,50,1};
return 0;
}
X 값 | Y 값 | XY 값 |
---|---|---|
![]() | ![]() | ![]() |
Struct Visualizer에서 C/C++ 구조체 또는 C++ 클래스의 내용을 보면 다음과 같습니다. 이 예제는 Seer가 속한 현재 C++ 클래스에 대한 "*this"의 내용을 보여줍니다. 기본 유형인 모든 구조 멤버를 편집할 수 있습니다.
더 가볍지만 포인터를 따라갈 수 없고 편집할 수 없는 기본 구조 시각화 도우미 도 있습니다.
이미지인 원시 메모리의 내용을 볼 때 Image Visualizer를 사용할 수 있습니다.
Seer는 명령줄에서 디버깅하기 위해 프로그램을 쉽게 시작하기 위한 것입니다. gdb에는 프로그램을 디버깅하는 여러 가지 방법이 있습니다. 그래서 Seer도 자연스럽게 그렇게합니다.
Seer를 실행하는 모든 방법을 보려면 Wiki로 이동하세요.
https://github.com/epasveer/seer/wiki/Starting-Seer
버그나 기능이 있으면 [email protected]으로 이메일을 보내주세요. 또는 내 GitHub 프로젝트 페이지에서 작업을 생성하세요.