Distributed and Cloud Computing Lab. Embedded System Software 개발 환경 설정 Dept. of Computer Science and Engineering Sogang University, Seoul, KOREA 1
Distributed and Cloud Computing Lab. Host PC : Linux (Ubuntu 14.04) System on x64 architecture Target Board : Embedded Linux System on ARM architecture Host PC 에서 제작된 소스 코드를 ARM 용 실행 파일로 컴파 일하기 위해서는 ARM 용 toolchain( 컴파일러, 링커, 라이브 러리 등 ) 을 설치해야 한다. 실습 환경 2
Distributed and Cloud Computing Lab. Target Board 3
Distributed and Cloud Computing Lab. Edit Connections → Edit → IPv4 Settings → Method: Manual → Addresses: Add → Address: *** Netmask: Gateway: DNS servers: 네트워크 설정 4
Distributed and Cloud Computing Lab. 터미널 접속 후 확인 ping ifconfig → ifconfig eth0 up 네트워크 설정 5
Distributed and Cloud Computing Lab. 터미널 실행 슈퍼유저 계정 생성 sudo passwd root sudo –s 를 입력하고 root 의 암호를 입력하여 root 권 한 얻기 apt-get update 슈퍼유저 계정 생성 6
Distributed and Cloud Computing Lab. VIM 설치 : apt-get install vim vi /etc/lightdm/lightdm.conf 파일 생성 후 다음과 같이 입력 vi /usr/share/lightdm/lightdm.conf.d/ 50-ubuntu.conf 에 추가 저장 후 우분투 로그아웃 후 root 계정으로 로그인 7
Distributed and Cloud Computing Lab. TFTP sudo initctl reload-configuration apt-get install tftp tftpd-hpa VIM 설치 : apt-get install vim vi /etc/default/tftpd-hpa 수정 mkdir /tftpboot sudo service tftpd-hpa restart 개발툴 설치 8
Distributed and Cloud Computing Lab. 우분투 방화벽 설정 ufw disable / ufw enable TFTP test echo “TFTP test” > /tftpboot/test.txt tftp localhost tftp> get test.txt tftp> quit cat test.txt 개발툴 설치 9
Distributed and Cloud Computing Lab. TFTP( 앞에 것으로 안되었을 때 ) apt-get install tftp tftpd xinetd vi /etc/xinetd/tftp 수정 mkdir /tftpboot service xinetd stop service xinetd start 개발툴 설치 10
Distributed and Cloud Computing Lab. USB 드라이버 다운로드 apt-get install libusb-dev mkdir /root/temp cp smdk-usbdl.tar.gz /root/temp cd /root/temp tar zxvf smdk-usbdl.tar.gz cd /root/temp/dltools cp –a smdk-usbdl /usr/bin smdk-usbdl 이 되지 않을 때 apt-get install libusb-0.1-4:i386 개발툴 설치 11
Distributed and Cloud Computing Lab. Cross Compiler dpkg-reconfigure –plow dash No 선택 mkdir root/temp cp arm-2009q1-203-arm-none-linux-gnueabi-i686- pc-linux-gnu.tar.bz /root/temp sync cd /root/temp mkdir /opt/toolchains tar jxvf arm-2009q1-203-arm-none-linux-gnueabi- i686-pc-linux-gnu.tar.bz –C /opt/toolchains 개발툴 설치 12
Distributed and Cloud Computing Lab. vi /root/.bashrc 수정 .bashrc 갱신 source /root/.bashrc 개발툴 설치 13
Distributed and Cloud Computing Lab. CrossCompiler 버전 확인 arm-none-linux-gnueabi-gcc –v CrossCompiler 버전이 확인되지 않을 때 $ sudo apt-get install git gnupg flex bison gperf build- essential $ sudo apt-get install zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev $ sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python- markdown libxml2-utils xsltproc zlib1g-dev:i386 $ sudo apt-get install libglapi-mesa-lts-saucy:i386 리눅스 재부팅 개발툴 설치 14
Distributed and Cloud Computing Lab. CrossCompile arm-none-linux-gnueabi-gcc –static –o hello hello.c file./hello 개발툴 설치 15
Distributed and Cloud Computing Lab. minicom apt-get install minicom minicom 환경 설정 minicom –s Serial port setup 통신포트 : /dev/ttyS0(/dev/ttyS1)(a) 통신속도 : N1(e → q) flow control: hard → no soft → no save setup as dfl 선택 후 exit 개발툴 설치 16
Distributed and Cloud Computing Lab. TFTP 보드 ip setting ifconfig eth0 TARGETIPADDRESS ifconfig eth0 up ping HOSTIPADDRESS 파일 전송 tftp –r FILENAME –g HOSTIPADDRESS 파일은 host pc 의 /tftpboot 폴더안에 존재해야한다 파일 전송 17