본문 바로가기
공부/임베디드

[Embedded OS] 1. 개발환경 구성하기

by nahowo 2026. 3. 17.

임베디드 OS 개발을 위한 개발환경을 구성해보자.

가상환경 설치(UTM)

UTM은 맥, iOS, visionOS용 오픈소스 가상환경 어플리케이션이다. 주로 QEMU 에뮬레이터 프로젝트를 기반으로 한다.

다음 링크에서 UTM을 설치한다.

다음 링크에서 Ubuntu Linux Server LTS iso를 다운받는다.

UTM에서 + 버튼을 누르고 다음과 같이 설정한다.

  • 가상화(Virtualize) 선택
  • 운영체제 Linux
  • 하드웨어 4GB(4096MB)
  • 부팅 이미지 Boot from ISO image, 다운받은 Ubuntu Linux iso 선택
  • 저장소 32 GB
  • 공유할 폴더 생성해서 지정

이름을 지어서 생성하면 완료된다.

가상환경에 Ubuntu Linux 설치 & ssh 세팅

방금 설정한 가상환경을 실행하면 우분투를 설치하는 터미널 창이 나온다. 전부 기본값으로 설정하면 된다. SSH는 이때 설치해도 되고 나중에 설치해도 된다.

계정, 서버명, 유저네임, 비밀번호 등을 설정한다.

우분투 설치가 완료되면 Reboot Now를 선택해서 재부팅한다. 나는 재부팅 이후 Failed unmounting cdrom.mount라는 오류가 떴는데, UTM 창에서 CD/DVD 메뉴의 초기화 버튼을 눌러 iso 파일을 지워주면 해결된다.

우분투 설치 이후 SSH를 설치하려면 설치 후 다음 명령어를 순차적으로 입력한다.

sudo apt update

sudo apt install openssh-server

설치가 완료되면 sudo systemctl status ssh로 현재 상태를 확인할 수 있다. active(running)이라면 돌아가고 있는 것이고 q를 눌러 빠져나올 수 있다.

ip a 를 입력해 우분투 서버의 IP 주소를 확인한다. enp-s3이나 eth0 아래의 inet 주소를 확인하면 된다.

이제 UTM 터미널 창 말고 맥의 터미널 창을 켜서 ssh {우분투 유저네임}@{우분투 서버 IP}를 입력하면 ssh에 접속할 수 있다.

컴파일러 설치

GCC(GNU Compiler Collection)는 C, C++, Fortran 등 다양한 코드를 컴파일할 수 있는 통합 컴파일러이다.

컴파일러를 설치한다. gcc-arm-none-eabi를 설치하려면 sudo apt install gcc-arm-none-eabi를 입력하면 된다.

설치 후 arm-none-eabi-gcc -v로 버전을 확인할 수 있다.

QEMU 설치

QEMU(Quick EMUlator)는 소프트웨어 스택 전체를 가상머신 위에서 실행할 수 있는 가상화 소프트웨어이다.

QEMU를 설치한다. sudo apt install qemu-system-arm을 실행해 설치한다. 설치 후 qemu-system-arm --version을 통해 버전을 확인할 수 있다. 실행 가능한 에뮬레이터 목록을 확인하려면 qemu-system-arm -M ?을 실행한다.

Github 세팅

코드를 기록하기 위해 추가로 세팅하는 부분이다.

터미널에 sudo apt install git으로 git을 설치한다.

git global config --global user.name "{깃허브 유저네임}", git global config --global user.email "{깃허브 이메일}"을 실행해 깃허브 정보를 등록한다.

ssh 접속을 위해 ssh-keygen -t ed25519 -C “{깃허브 이메일}"을 실행해 키를 생성한다. 깃허브 홈페이지에 접속해 settings > SSH and GPC keys > new SSH keys를 선택해 생성한 키를 등록한다.

ssh -T git@github.com을 실행하면 ssh 인증이 완료된다.

나는 깃허브에서 레포지토리를 실행하고 터미널에서 remote를 ssh로 연결했다. 처음 push를 할 때 깃허브 아이디/비밀번호를 입력해야 한다.

vscode 세팅

더 편하게 개발하기 위해 추가로 세팅하는 부분이다.

vscode에서 Remote - SSH 확장 프로그램을 다운받는다.

왼쪽 아래의 > < 아이콘 > Connect to Host > Add new SSH Host를 선택한다. 터미널에서 ssh 접속 시 사용한 ssh {우분투 유저네임}@{우분투 서버 IP}를 실행해서 추가할 수 있다.