반응형

VisualGDB와 Visual Studio를 사용하여 Raspberry Pi를 위한 크로스 컴파일 개발 환경을 만들어 봅니다. 



테스트 환경은 다음과 같습니다. 

 

Windows 10

Visual Studio 2019 Community 16.6.0

Raspberry Pi 3




1. Visual Studio와 VisualGDB가 설치되어 있어야 합니다.



Visual Studio 2019 Community 설치하는 방법은 다음 유튜브 영상을 참고하세요.

 

C/C++, Win32 API, MFC 개발을 위해 Visual Studio Community 2019 설치하는 방법

https://youtu.be/hB-OSsIwV8w



다음 링크 접속 후, 초록색 DOWNLOAD 버튼을 클릭하여 VisualGDB 설치 파일을 다운로드 받습니다. 

https://visualgdb.com/download/

 



VisualGDB 설치 파일을 실행하여 설치를 진행합니다. Visual Studio를 먼저 설치한 후, 진행해야 합니다.

 

설치시 Quick installation을 선택하면 됩니다. 

 




2. Visual Studio의 메뉴에서 File > New > VisualGDB Project를 선택합니다. 

 

Visual Studio 2019 16.6.0을 사용중이 아니라면 프로젝트 선택 방법이 다릅니다. 

메뉴에서 File > New > Project를 선택 후, 왼쪽 리스트에서 VisualGDB를 선택하고 오른쪽 목록에서 Linux Project Wizard를 선택하세요. 

 




3. Start Trial 버튼을 클릭합니다. 

 




30일 동안만 사용할 수 있습니다. 

 




4. OK를 클릭합니다. 

 




5. Linux Project Wizard를 선택하고 Name 항목에 적당한 프로젝트 이름을 적어준후, Add 버튼을 클릭합니다. 

주의할점은 프로젝트 이름에 공백이 있으면 안됩니다. GDB 동작시 문제가 발생하니  프로젝트 이름에 공백을 넣지 마세요.

 




6. Application과 MSBuild가 선택된 상태에서 Next 버튼을 클릭합니다. 

 




7. Build the project locally with a cross-compiler를 선택하고 cross-toolchain 항목의 콤보 박스를 클릭하여 Download more toolchains를 클릭합니다. 

 




8. Raspberry PI toolchain을 체크하고 Install 1 package를 클릭합니다. 

 




9. 툴체인 설치 경로를 변경할 수 있습니다. OK 버튼을 클릭합니다. 

 




10. 툴체인 다운로드가 시작됩니다.

 




10. 다운로드 완료 후, Cross-toolchain 항목에서 다음처럼 설치한 툴체인을 선택할 수 있습니다. 

 




11. Deployment computer 항목의 콤보박스를 클릭한 후, Create a new SSH connection을 선택합니다. 

Raspberry PI가 현재 사용중인 PC와 같은 네트워크에 연결된 상태여야 합니다. 

 




12. Host Name, User Name, Password를 입력하고 Create 버튼을 클릭합니다. 

 



Save를 클릭합니다.




13. Raspberry Pi와 연결이 완료되었습니다. Finish 버튼을 클릭합니다. 

 




14. gdbserver가 설치안되었다고 경고창이 보입니다. Yes를 클릭하여 설치하도록합니다. 

 



15. fix가 선택된 상태로 OK버튼을 클릭합니다. 

 




16. 프로젝트 창에서 RaspberryProject.cpp 파일을 선택하면 기본 코드가 보입니다. 

cpp 파일의 이름은 프로젝트 이름으로 결정됩니다. 

 




17. 다음처럼 추가 코드를 입력합니다. 

 

#include using namespace std;int main(int argc, char *argv[]){ char sz[] = "Hello, World!"; //Hover mouse over "sz" while debugging to see its contents cout << sz << endl; //<================= Put a breakpoint here int a = 1;
int b = 2;
int c = a + b;
return 0;}






18. cout 문 옆에 회색 부분을 클릭하면 빨간점이 표시되며 해당 라인이 브레이크포인트가 됩니다. 

 




19. F5를 누릅니다. 

 

컴파일 및 실행이 된후, 브레이크 포인트를 지정한 곳에 노란색 화살표가 보입니다. 

 

오른쪽 아래에 보이는 Click here to open new shell as를 클릭하면 라즈베리파이와 SSH로 연결하여 터미널을 보여줍니다. 

 




20. 왼쪽 아래 창에서 Locals 탭을 선택 후, F10을 눌러 한줄씩 실행하면 변수 a,b,c 값이 변하는 것을 볼 수 있습니다. 

 




21. 오른쪽 아래 창에서 gdbserver 탭을 선택하면 cout를 사용하여 출력한 문장을 볼 수 있습니다. 

 




22. 라즈베리파이에서 추가한 라이브러리를 가져와 사용할 수 있습니다. 

 

Visual Studio 메뉴에서 Project > VisualGDB Project Properties를 선택합니다. 

왼쪽 메뉴에서 MSBuild settings를 선택하고 오른쪽에 보이는 Synchronize sysroot를 선택합니다.  

 




라즈베리파이의 아래 보이는 위치들에서 헤더파일과 라이브러리를 윈도우로 가져옵니다.

 




최초작성 2020. 5. 24



참고 https://visualgdb.com/tutorials/raspberry/crosscompiler/



반응형

문제 발생시 지나치지 마시고 댓글 남겨주시면 가능한 빨리 답장드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

+ Recent posts