README.md 3.81 KB

[컴파일러 설치] -- 내용무시


  • toolchain 디렉토리의 arm-buildroot-linux-gnueabi-4.9.3.tar.gz 파일을 디렉토리에 풀어 사용한다.

    $> cd toolchain/
    $> tar zxvf arm-buildroot-linux-gnueabi-4.9.3.tar.gz  .
    

[컴파일을 위한 환경파일] -- 내용무시


  • 환경파일 env-br-4.9.3.env

    export CROSS_COMPILE=arm-buildroot-linux-gnueabi-
    export ARCH=arm
    
    export WORK_TOP_PATH=$(pwd)
    export G2C_TOOLCHAIN_PATH=${WORK_TOP_PATH}/toolchain/usr
    
    export PATH=${G2C_TOOLCHAIN_PATH}/bin:$PATH
    export WORK_LD_LIBRARY_PATH=${G2C_TOOLCHAIN_PATH}/lib
    
  • source 유틸리티를 사용하여 환경을 설정한다.

    $> source env-br-4.9.3.env
    

[부트로더 컴파일] -- 내용무시


  • 부트로더 디렉토리 bootloader/u-boot_2015_01 로 이동한다.

    $> cd bootloader/u-boot_2015_01
    
  • make-imx6.sh 파일을 실행한다. (처음실행이거나 혹은 재컴파일인 경우도 동일하게 실행한다)

    $> ./make-imx6.sh
    
  • 환경을 변경하려면 쉘을 사용하지 않고 아래와 같이 사용한다.

    $> make menuconfig
    
  • u-boot 환경파일

    mx6sl_apsi_defconfig
    

[커널 컴파일] -- 내용무시


  • 커널 디렉토리 kernel/linux-imx6-3.14.52 로 이동한다.

    $> cd kernel/linux-imx6-3.14.52
    
  • make-imx6.sh 파일을 실행한다. (처음실행이거나 혹은 재컴파일인 경우도 동일하게 실행한다)

    $> ./make-imx6.sh
    
  • 컴파일 후 생성된 uImage 파일과 dtb 파일은 자동으로 특정 디렉토리로 복사된다.

  • 컴파일시 에러가 발생하였다면 mrproper 명령을 적용한다.

    $> ./make-imx6.sh  mrproper
    $> ./make-imx6.sh
    
  • dt, module 등을 컴파일 하려고 한다면 해당명령어를 입력한다. (dt는 커널 컴파일시 자동으로 컴파일된다)

  • 컴파일된 module은 "../out_linux_3.14.52" 디렉토리에 복사된다.

    $> ./make-imx6.sh  dtb
    $> ./make-imx6.sh  modules
    $> ls ../out_linux_3.14.52
    
  • 커널 환경을 위해 menuconfig 를 사용하려면 아래와 같이 실행한다. ( make menuconfig 사용하면 안됨 )

    $> ./make-imx6.sh  menuconfig
    

[RFS, buildroot 컴파일] -- 내용무시


  • buildroot 디렉토리 buildroot-new 로 이동한다.

    $> cd buildroot-new
    
  • 컴파일을 위해서 make-imx6.sh를 수행한다.

    $> ./make-imx6.sh
    
  • 환경 수정을 위해 menuconfig 를 사용할때는 아래와 같이 사용한다.

    $> ./make-imx6.sh menuconfig
    
  • 환경 파일을 defconfig 에 저장하려면 아래와 같이 사용한다. (함부로 저장하면 안되니 주의할것!!)

    $> ./make-imx6.sh savedefconfig
    
  • 환경 파일을 저장하고 싶다면 새로운 환경파일을 만들어 사용며 이때는 menuconfig 명령을 통해 해당 파일 이름을 수정하여 사용한다.

  • 환경파일 이름이 apsi_A 로 시작되는 파일은 오재경 이사(혹은 김민수 팀장)가 관리하는 파일이니 절대 저장 혹은 변경하지 않도록 주의한다.

  • 컴파일된 후 파일들은 ../output-apsi 디렉토리에 생성된다.

  • 램디스크 작업을 위해 make-imx6.sh를 아래와 같이 실행한다.

    $> ./make-imx6.sh image
    
  • ssh key를 (재)생성하기 위해서는 아래와 같이 실행한다.

    $> ./make-imx6.sh ssh-key

  • menuconfig 를 통해 환경을 수정한 이 후 컴파일시 에러가 발생할 경우 clean 명령을 실행한다.

    $> make
    ...some errors...
    $> make clean
    $> make