2010년 2월 17일 수요일

Embedded Linux를 사용해보자

ELDK 다운로드

  • http://www.denx.de/wiki/DULG/ELDK

    DENX는 Embedded Linux와 Realtime Linux에서 소프트웨어 공학 서비스를 제공하며, ELDK를 배포하는 곳

  • 3.5.2 Downloading the ELK 를 찾아가서

    • 수정 (2009/08/07)
    • ppc-2008-04-01.iso를 다운로드 받은 후 (2G이기 때문에 다운 받는데 시간이 많이 걸림)
    • http://phoenix.hnu.kr/ysyun/cp/ppc-2008-04-01.iso 에서 다운로드 받기 바람.
    • dvd-rom으로 구운다. (iso 파일이기 때문에 쉽게 구울 수 있죠?^^)
    • ppc-2008-04-01 버전은 리눅스 커널 2.6.x에서 개발된 것이기 때문에, 커널 동작시에 panic이 발생함


CDROM 마운트하기

  • ppc-2008-04-01.iso ppc-2005-03-07.iso를 다운로드 했는데, CD-ROM으로 굽기는 그렇고, 그냥 설치하면 안 될까?
  • $ mkdir -p /mnt/iso
  • $ mount -o loop -t iso9660 -r [다운로드 받은 iso 이미지] /mnt/iso 실행하면
  • /mnt/iso 디렉토리에 CD-ROM 내용이 보인당..


ELDK 설치하기

  • CD-ROM을 삽입하면, 거의 대부분 CD-ROM을 자동 마운트 한다.
  • 안되면 손으로 해야쥥..
  • 이때 명령어는 바탕화면의 Console을 실행하여 입력한다.
  • $ mount -t iso9660 /dev/cdrom {또는 /dev/sr0 } /mnt/cdrom
  • 이때 /mnt/cdrom이 없다고 나오면 $mkdir -p /mnt/cdrom 해주는 센스
  • cd /mnt/cdrom 또는 마운트 된 CD-ROM의 디렉토리
  • ./install -d /usr/local/ELDK ppc_8xx 를 실행하면, /usr/local/ELDK에 관련 파일들을 설치한다.

    • Puppy Linux의 경우 /usr/local/ 디렉토리는 ram disk이기 때문에 용량 부족으로 설치가 되지 않는다.
    • 컴퓨터의 C나 D 드라이브를 마운트 한 후, Windows XP 시스템의 드라이브에 설치를 한다.


  • 다음은 설치 화면..

  • eldk-install.png


ELDK 설치 확인하기

  • $ export PATH=/usr/local/ELDK/bin:/usr/local/ELDK/usr/bin:$PATH
  • 실행 한 후,
  • $ ppc_8xx-gcc 실행하면
  • ppc_8xx-gcc: no input files
  • 라고 메시지를 표시하면 성공..

커널 컴파일하기 (현재 MPC850 보드에 대한 patch나 수정 사항을 구할 수 없어 PASS!!!)

  • 자신의 home directory에서
  • $ mkdir -p ~/build/kernel 을 실행한다.
  • 그런 다음,
  • cd /usr/local/ELDK/ppc_8xx/usr/src/linux 를 한 다음
  • make O=~/build/kernel menuconfig
  • 를 실행하자..

  • kernel-compile.png

  • 위와 같은 화면이 보이면 커널을 수정할 준비가 다 되었다..
  • 만약 위 단계에서 curses.h를 찾을 수 없다거나 KEYDOWN 등이 설정되지 않았다면 ncurses-devel이 설치되지 않은 까닭..
  • 현재 자기가 사용하는 리눅스에 ncurses-devel을 설치하도록 한다.

linux-2.4.2를 컴파일한 후 LETOK-850에 이식하기

  • linux kernel 2.4.2 를 다운로드 한다. (다운로드: linux-2.4.2.tar.gz)
  • tar xvfz linux-2.4.2.tar.gz 를 실행한다.
  • export PATH=/opt/ELDK/usr/bin:/opt/ELDK/bin:PATH

    가 제대로 설정되었는지 확인한다. (echo $PATH 해서 /opt/ELDK/usr/bin이 path에 포함되었는지 확인)

  • make menuconfig 실행
  • make dep 실행
  • make vmlinux.ppcboot 실행
  • 컴파일된 vlinux.ppcboot를 /tftpboot 에 복사 (tftpboot 설정 참조)

댓글 없음:

댓글 쓰기