Mac 에 임베디드 리눅스 개발 환경 구성하기

반응형

본 글에서는 Mac PC 에서 임베디드 리눅스 개발을 위한 환경을 구성하는 방법을 설명한다.

참고로, 본 글에 언급된 환경은 지극히 주관적인 관점으로 본인이 현재 사용하고 있는 대로 구성하도록 작성되었다.

 

리눅스 개발 환경 구성

[맥] Docker 설치

Docker 참고사이트

Docer for Mac 설치

Docker 실행

MacBook-Pro:~ hello$ docker run -it ubuntu:14.04
root@9427234756e6:/#

 

[리눅스(도커)] 개발용 계정 생성

본 컨테이너를 실행하면 기본적으로 root 계정으로 시작한다. 실제 개발 시에 root 계정으로 진행하면 배포 시에 문제가 있을 수 있으므로 개발용 계정을 새로 생성하여 사용한다.

adduser 명령으로 계정을 추가하고, sudo visudo 명령으로 해당 계정에 super user 권한을 할당한다.

root@9427234756e6:/# adduser hello
...
 
root@9427234756e6:/# sudo visudo
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
 
# Host alias specification
 
# User alias specification
 
# Cmnd alias specification
 
# User privilege specification
root    ALL=(ALL:ALL) ALL
hello    ALL=(ALL:ALL) ALL           -> hello 계정 추가
 
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
 
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
 
# See sudoers(5) for more information on "#include" directives:
 
#includedir /etc/sudoers.d
 
:wq

 

[리눅스(도커)] 개발용 툴 설치

각 플랫폼용 툴체인을 포함한 필요 사항들을 설치하거나 설정한다.  주요 설치항목은 다음과 같다.

  • ARM용 크로스컴파일러
  • PPC용 클로스컴파일러
  • scp 사용을 위한 ssh

참고로 Ubuntu 14.04에서는 버전 명시없이 크로스컴파일러를 설치하면 4.8.4 버전의 gcc가 설치된다(arm-linux-gnueabi는 4.7.3).

root@9427234756e6:/# su hello
hello@9427234756e6:/$ sudo apt-get update
hello@9427234756e6:/$ sudo apt-get install build-essential
hello@9427234756e6:/$ sudo apt-get install gcc-arm-linux-gnueabihf
hello@9427234756e6:/$ sudo apt-get install gcc-arm-linux-gnueabi
hello@9427234756e6:/$ sudo apt-get install gcc-powerpc-linux-gnu
hello@9427234756e6:/$ sudo apt-get install ssh
hello@9427234756e6:/$ sudo apt-get install vim
hello@9427234756e6:/$ exit

 

[맥] 도커 이미지 저장하기

툴체인 등 개발환경이 모두 설정된 상태를 도커 이미지로 저장한다. 

root@9427234756e6:/# exit
exit
 
MacBook-Pro:~ hello$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                       PORTS               NAMES
9427234756e6        ubuntu:14.04        "/bin/bash"         6 seconds ago       Exited (0) 2 seconds ago                         youthful_kepler
e99581702f5f        ubuntu:14.04        "/bin/bash"         17 hours ago        Exited (0) 17 hours ago                          goofy_blackwell
 
MacBook-Pro:~ hello$ docker commit -m "development enviroments setup" -a "hello" 9427234756e6 ubuntu-devel:14.04
sha256:9ce47bbd2ab24d1c02ca4f36404c76b5ebb40d5b97ac10f76a3388caeeaee52d
 
MacBook-Pro:~ hello$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu-devel        14.04               9ce47bbd2ab2        2 seconds ago       222MB
ubuntu              14.04               a35e70164dfb        3 weeks ago         222MB

 

 

개발용 리눅스(도커) 실행하기

다음 명령을 통해 리눅스 도커를 실행하여 작업을 수행할 수 있다.

MacBook-Pro:~ hello$ docker run -u hello -v ~/Desktop:/Desktop --rm -it ubuntu-devel:14.04
hello@a773182065ee:/$

 

명령줄 옵션은 다음과 같다.

  • -u : 리눅스에 로그인할 계정
  • -v : 마운트 옵션. Mac의 ~/Desktop을 도커 리눅스의 /Desktop 디렉터리로 마운트
  • --rm : 프로세스 종료 시 도커도 함께 종료
  • -it : 터미널 입출력 옵션 → 이걸 하지 않으면 키 입력이 되지 않는다.
  • ubuntu-devel:14.04 : 위에서 생성한 ubuntu-devel 14.04 컨테이너를 실행한다. 

주의사항: 도커 실행이 종료되면, 도커 내에서 수행되었던 작업은 모두 사라진다(변경사항이 컨테이너에 저장되지 않는다). 따라서, 작업공간은 마운트된 Mac의 디렉토리를 사용해야 한다.

 

편집기 설치

Eclipse 설치

Visual studio code 설치

Typora - 마크다운 편집기

 

Mac 설정

homebrew 설치 (패키지 관리자)

  1. http://brew.sh/
  2. 터미널에서 다음 명령 실행
MacBook-Pro:~ hello$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
MacBook-Pro:~ hello$ curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh
MacBook-Pro:~ hello$ chsh -s /usr/local/bin/zsh

 

터미널 스타일 설정 (검은색 바탕 흰색 글씨)

  1. 터미널 실행
  2. '터미널' → '환경설정' 메뉴 선택
  3. '프로파일' 탭에서 'Pro' 더블 클릭
  4. '일반' 탭에서 '시작 시 열기'의 '새로운 윈도우(프로파일 포함)' 항목을 'Pro'로 변경
  5. '셀' 메뉴에서 '기본 설정으로 사용' 선택

 

Go2Shell 설치

  • Finder 상 현재 위치에 대한 쉘 터미널을 열어주는 프로그램 (cd 명령을 이용해서 원하는 디렉토리로 이동하지 않아도 됨)
  • AppStore에서 "Go2Shell" 검색 후 설치
  • 설치 방법은 AppStore 화면 참조

 

기타 프로그램 설치

CoolTerm 설치

GitKraken 설치

tftp 서버 설치

 

댓글

Designed by JB FACTORY