Download presentation
Presentation is loading. Please wait.
1
Cross Compiler를이용한 커널 컴파일 및 포팅
2
Cross Compiler 설정 Cross Compiler
Target 보드에서 동작하는 실행파일을 Host PC에서 컴파일 할 수 있는 컴파일러 Cross compile Toolchain Download ->SAMBA를 이용한 다운로드 가능 /usr/local/arm/ 경로에 압축 풀기 /usr/local/arm 경로로 이동 후 압축 풀기 압축풀기 작업 후 결과 : /usr/local/arm/arm-2009q3 폴더 생성
3
Cross Compiler 설정 Path 설정 컴파일러 확인 Cross 컴파일 테스트
vi ~/.bashrc 실행 후 아래의 내용 추가 #source ~/.bashrc 실행 컴파일러 확인 arm-linux-gcc –v Cross 컴파일 테스트 자신의 학번과 이름을 출력하는 C코드 작성 다음의 과정을 통하여 컴파일 및 확인, 실행 (option과제 : gcc를 이용한 컴파일 및 실행)
4
Cross Compiler 설정 실습1. 자신의 학번 이름을 출력하는 프로그램 소스를 타겟보드용으로 컴파일 한 후 실행 한 결과가 실행되지 않는 이유를 설명하시오 실습2. 실습1에서 만들어진 실행파일을 Target Board에서 nfs로 마운트하여 실행한 결과 를 캡처하시오 nfs가 되지 않을 경우 tftp를 활용 tftp –r 해당파일 서버IP –g Ex) tftp –r test g
5
커널 컴파일 및 포팅 vi Makefile에서 크로스 컴파일러 Path설정
6
커널 컴파일 및 포팅 #apt-get install libncurses5-dev
#make menuconfig 명령 실행 및 설정(NFS 및 카메라 설정 등등) File systems 선택 후 Enter
7
커널 컴파일 및 포팅 Network File Systems 선택 후 Enter
8
커널 컴파일 및 포팅 NFS client support 선택 후 하위 옵션 선 택(Space 키 사용) 설정 후 Exit
Save화면에서 Yes선택 후 Enter
9
커널 컴파일 및 포팅 커널 소스가 있는 경로에서 make 명령어 실행
/arch/arm/boot/zImage 컴파일된 커널 이미지 cp /arch/arm /boot/zImage /tftpboot
10
커널 컴파일 및 포팅 Target Board의 u-boot에서 커널 이미지 다운로드
tftp [다운로드 받을 Target Board의 RAM Address] [다운로드 받을 파일이름] ex) tftp zImage 다운로드 받은 커널이미지를 Nand영역에 Write write할 nand영역 삭제 nand erase [삭제 할 nand 시작주소] [삭제 할 nand영역의 크기] ex) nand erase (download zImage size) nand 영역에 커널이미지 write Nand write [다운로드 받은 RAM Address] [Write할 nand 시작주소] [write할 nand영역 크기] nand write 커널이미지 Write 작업 후 boot 명령 실행
11
커널 컴파일 및 포팅 Target 보드에서 커널 이미지 다운로드 및 포팅 실행화면
12
파일시스템 포팅 홈페이지에서 rootfs_441.yaffs2파일 다운로드
다운받은 파일을 samba를 이용해서 /tftpboot에 복사 tftp root_441.yaffs2 nand erase f9c0000 (tftp로 받은 size를 써도 무관함) nand write.yaffs xxxxxx(tftp로 받은 size = 정확히 입력해야 가능) *명령어가 다르니 주의 NAND Address Size Contents 0x0(0x0 – 0x80000) 512KB Bootloader 0x80000(0x x440000) 3.75MB Kernel 0x440000(0x xFE00000) 249.75MB Filesystem 0xFE00000(0xFE x ) 2MB Boot log
Similar presentations