본문 바로가기
임베디드/s3c2240mini (X35)

S3C2440mini 개발환경 구축

by 호군 2011. 10. 14.
반응형
개발환경 구축에서 가장 중요한 것은 컴파일러를 설치하는 것일 껍니다.
그래야 소스파일을 컴파일 하여 실행파일로 만들어서 보드에서 실행 할 수 있기 때문이죠.
보드와 같이 있는 CD를 보면 linux 폴더가 있습니다. 그 안에는 gcc, bootloader, busybox 등...이 있습니다.
여기서 필요한 것은 arm-linux-gcc-4.3.2.tgz 입니다. 이 압축파일이 바로 소스파일을 컴파일 해주는 컴파일러 입니다.

arm-linux-gcc 압축해제
dhna@dhna-ubuntu:~$ mkdir s3c2440mini
dhna@dhna-ubuntu:~$ cd s3c2440mini
dhna@dhna-ubuntu:~$ cp /media/경로/arm-linux-gcc-4.3.2.tgz ./
dhna@dhna-ubuntu:~/s3c2440mini$ tar xvfz arm-linux-gcc-4.3.2.tgz

환경설정 파일 생성
dhna@dhna-ubuntu:~/s3c2440mini$ vi env.sh
ARM_LINUX_GCC_HOME="$HOME/s3c2440mini/arm-linux-gcc-4.3.2"
export PATH="$HOME/s3c2440mini/arm-linux-gcc-4.3.2/bin:$PATH"
echo "arm-linux-gcc include"

dhna@dhna-ubuntu:~/s3c2440mini$ source env.sh

이젠 arm-linux-gcc를 어디서든지 사용 할 수 있게 되었습니다.
간단하게 helloword 를 작성하셔서 아래와 같이 테스트를 해보시길 바랍니다.
dhna@dhna-ubuntu:~/s3c2440mini$ vi main.c
#include <stdio.h>
void main() {
    printf("hello world\n");
}

dhna@dhna-ubuntu:~/s3c2440mini$ arm-linux-gcc -o hello main.c

여기 까지 하셨으면, 소스코드를 컴파일하여 실행파일을 만들었습니다. 이젠 보드에 넣어야겠죠?
기본 유틸리티로 telnet과 tftp가 설치되어있습니다.
콘솔을 사용하더라도 시리얼보다 이더넷을 사용하는게 훨씬 더 낫겠죠?
굳이 telnet까지 있는데 쓰지 않을 이유가 없습니다. 먼저 IP를 설정해보죠.

먼저 보드에 시리얼로 접근해야겠죠. IP도 모르니.. 접근할 수 있는 방법은 시리얼뿐입니다.
설정은 115200 8n1 으로 설정해야 합니다. 로그인은 root로 로그인 합니다.

root 로그인
Kernel 2.6.32.2-FriendlyARM on (/dev/pts/0)

FriendlyARM login: root

일시적인 IP 설정
[root@FriendlyARM /]# ifconfig eth0 192.168.0.100 netmask 255.255.255.0 up
[root@FriendlyARM /]# route add default gw 192.168.0.1 dev eth0

영구적인 IP 설정
[root@FriendlyARM /]# cd /etc
[root@FriendlyARM /]# vi eth0-setting

IP=192.168.0.100
Mask=255.255.255.0
Gateway=192.168.0.1
DNS=59.187.192.80
MAC=08:90:90:90:90:90
vi편집기 사용은 인터넷을 찾아보시기 바랍니다.
MAC은 기존 주소를 그대로 사용하시고, IP는 원하는 주소를 사용하세요.
eth0-setting 파일의 내용을 변경한 뒤 저장하신 뒤 reboot을 하시면 됩니다. 만약 싫다면, 위의 일시적인 IP 설정을 수행하세요.

호스트PC에서 이더넷을 통해 접근 할 수 있는 환경 구축을 모두 하였습니다.
이젠 호스트PC에서 Putty나 SecureCRT와 같은 프로그램을 이용하여  보드IP(192.168.0.100)로 접근합니다.

tftp 사용하기
PUT : # tftp -l {local file name} -p {server ip}
GET : # tftp -r {remote fiel name} -g {server ip}

[root@FriendlyARM /]# tftp -r remote_file.txt -g 192.168.0.11 
이 명령어를 테스트 하기전에 호스트PC에 tftp-server를 설치하셔야 합니다.
PUT은 tftp-server에 쓰는 명령어이고, GET은 tftp-server에서 가져오는 명령어 입니다.
저의 호스트PC의 IP는 192.168.0.11이고, 이 호스트PC에는 tftp-server 데몬이 돌아가고 있습니다.
가져오려는 hello 파일은 tftproot에 있어야 가져 올 수 있다는 것을 기억해주세요. tftp-server는 인터넷에 보면
설치하는 방법이 간단히 나와있습니다.
반응형