Getting Started Guide 시작 안내서
Setting Up the Development Environment on Windows 윈도우에 개발 환경 설정하기
Setting Up the Development Environment on Linux 리눅스에 개발 환경 설정하기
Setting Up the Development Environment on macOS 맥오에스에 개발 환경 설정하기
유비노스 기본 소스 트리를 가져와 브이에스코드로 열기
이 과정은 윈도우일 경우 명령 프롬프트(cmd)에서, 리눅스 또는 맥오에스일 경우 터미널에서 수행한다.
1. 내 작업 공간 디렉토리를 만든 후, 그 곳으로 이동한다. (작업 공간 디렉토리 경로에 한글이 포함되면 안 됨)
- 윈도우일 경우의 예
cd C:\ mkdir MyWorks cd MyWorks
- 리눅스 또는 맥오에스일 경우의 예
cd ~ mkdir MyWorks cd MyWorks
2. 다음 명령을 입력해 유비노스 기본 소스 트리인, ubiworks를 가져온다.
git clone https://github.com/ubinos/ubiworks.git cd ubiworks git submodule update --init git submodule foreach git switch ubinos-main cd ..
3. 다음 명령을 입력해 가져온 소스트리를 브이에스코드로 연다.
code ubiworks
라이브러리를 최신으로 갱신하기
이 과정은 브이에스코드에서 수행한다.
1. 다음 메뉴를 선택해 라이브러리 관리자를 연다.
- VSCode → Menu → Terminal → Run Build Task...
- make xmgr
2. 다음 작업을 수행해 갱신할 수 있는 라이브러리가 있는지 확인한다.
- Check for update all
3. U 항목이 O인 라이브러리가 있으면 다음 작업을 수행해 최신으로 갱신한다.
- Check the library
- Update
- Run
- Close
4. 다음 작업을 수행해 라이브러리 관리자를 닫는다.
- Close
간단한 응용 예제 빌드하기
이 과정은 브이에스코드에서 수행한다.
1. 다음 메뉴를 선택해 구성을 선택한다.
- VSCode → Menu → Terminal → Run Build Task...
- make xsel
- ubinos - hello_world_netduinoplus2_qemu
- Select
- make xsel
4. 다음 메뉴를 선택해 소스 트리를 선택한 구성으로 빌드한다.
- VSCode → Menu → Terminal → Run Build Task...
- make rebuildd
디버거로 Hello World 응용 예제 실행하기
이 과정은 브이에스코드에서 수행한다.
1. 다음 메뉴를 선택해 디버그 서버를 시작한다. (큐이엠유가 제공하는 가상머신을 사용해 응용을 실행시킬 경우 이 과정은 생략한다.)
- VSCode → Menu → Terminal → Run Build Task...
- make xdserver
2. 다음 메뉴를 선택해 브이에스코드의 실행 뷰를 연다.
- VSCode → Menu → View → Run
3. 브이에스코드 실행 뷰에서 다음 실행 구성을 선택한다.
- ARM Target (build load)
4. 다음 메뉴를 선택해 디버깅을 시작한다.
- VSCode → Menu → Run → Start Debugging
이 과정까지 정상적으로 수행했다면, 브이에스코드에 소프트웨어 진입점인 Reset_Handler 코드가 나타난다.
5. 다음 메뉴를 선택하고, appmain을 입력 후 엔터키를 눌려, appmain 함수에 중단점을 설정한다.
- VSCode → Menu → Run → New Breakpoint → Function Breakpoiint... → appmain → Enter key
(입력 창은 실행 뷰(Run view)의 아래쪽에 나타난다.)
6. 다음 메뉴를 선택해 중단점을 설정한 appmain 함수까지 수행한다.
- VSCode → Menu → Run → Continue
이 과정까지 정상적으로 수행했다면, 브이에스코드에 appmain 함수 코드가 나타난다.
이후, 필요에 따라 다음 메뉴들를 선택해 예제를 계속 실행시킨다.Continue (계속 실행):
- 다음 중단점을 만날 때까지 계속 수행
Step Over (건너뛰기):
- 현재 줄의 코드를 실행한 후 다음 줄로 넘어감
- 만약 현재 줄에 함수 호출이 있으면 그 함수는 전부 수행
Step Into (들어가기):
- 현재 줄의 코드를 실행한 후 다음 줄로 넘어감
- 만약 현재 줄에 함수 호출이 있으면 해당 함수 내부로 진입하여 첫 번째 줄에서 멈춤
Step Out (나오기):
- 현재 실행 중인 함수의 실행을 완료하고 해당 함수를 호출했던 곳으로 돌아감
- Stop Debugging (디버깅 끝내기)
- 현재 실행 중인 디버깅을 종료함