다음 과 같이 추가한 Qt 애플리케이션이 있습니다 ~/.config/openbox/autostart.sh
.
(sleep 5 && /home/user/UI/UI) &
터미널에서 Openbox를 시작하면 Qt 애플리케이션이 사용할 수 없는 회색 상자로 열립니다. Openbox에서 xterm을 시작한 다음 Qt 애플리케이션을 수동으로 시작하면 제대로 작동합니다. 내가 뭘 잘못했나요?
답변1
이 경우 프로그램 실행을 추적하는 것이 도움이 될 수 있습니다. strace와 gdb는 이 목적으로 사용할 수 있는 두 가지 도구입니다.
- strace를 사용하여 시스템 호출을 기록하고
-o file
파일에 로그를 씁니다. 시스템 호출을 실행하는 동안 프로그램이 중단되는 경우 표시됩니다. - gdb를 사용하여 실행 중인 프로세스에 연결하고(를 통해
-p pid
) 모든 스레드의 스택 추적을 검사합니다.
이를 통해 프로세스가 중단된 이유를 알 수 있습니다.