이번 강좌에서 buildroot 환경 설정하는 방법을 설명하도록 하겠습니다.


buildroot 는 저번 강좌에서 소개한 사이트에서 파일을 직접 다운로드하거나 아래의 방법으로 다운로드하면 됩니다.

파일 다운로드

   tmp# git clone git://git.buildroot.net/buildroot

   tmp# ls
   buildroot

   tmp# cd buildroot
   buildroot# ls
   CHANGES  Config.in         Makefile         README  board  configs  fs     package  system
   COPYING  Config.in.legacy  Makefile.legacy  arch    boot   docs     linux  support  toolchain


환경 파일들
   buildroot 에서 환경 설정은 다음 디렉토리에서 확인 할 수 있습니다.
   즉, 이 디렉토리에 있는 환경 설정들이 적용한 프로세서들입니다.
   이 환경 설정을 기본으로 원하는 프로세서에 적용하시면 됩니다.
  
   buildroot# ls confis/
   acmesystems_aria_g25_128mb_defconfig  cubieboard2_defconfig                     qemu_microblazebe_mmu_defconfig
   acmesystems_aria_g25_256mb_defconfig  cubieboard_defconfig                      qemu_microblazeel_mmu_defconfig
   altera_socdk_defconfig                freescale_imx28evk_defconfig              qemu_mips64_malta_defconfig
   altera_sockit_defconfig               freescale_imx31_3stack_defconfig          qemu_mips64el_malta_defconfig
   arm_foundationv8_defconfig            freescale_imx6dlsabreauto_defconfig       qemu_mips_malta_defconfig
   armadeus_apf27_defconfig              freescale_imx6dlsabresd_defconfig         qemu_mipsel_malta_defconfig
   armadeus_apf28_defconfig              freescale_imx6qsabreauto_defconfig        qemu_ppc64_pseries_defconfig
   armadeus_apf51_defconfig              freescale_imx6qsabresd_defconfig          qemu_ppc_g3beige_defconfig
   armadeus_apf9328_defconfig            freescale_imx6sololiteevk_defconfig       qemu_ppc_mpc8544ds_defconfig
   at91rm9200df_defconfig                freescale_mpc8315erdb_defconfig           qemu_ppc_virtex_ml507_defconfig
   at91sam9260dfc_defconfig              freescale_p1010rdb_pa_defconfig           qemu_sh4_r2d_defconfig
   at91sam9260eknf_defconfig             freescale_p2020ds_defconfig               qemu_sparc_ss10_defconfig
   at91sam9261ek_defconfig               gnublin_defconfig                         qemu_x86_64_defconfig
   at91sam9263ek_defconfig               integrator926_defconfig                   qemu_x86_defconfig
   at91sam9g20dfc_defconfig              kb9202_defconfig                          qemu_xtensa_lx60_defconfig
   at91sam9g45m10ek_defconfig            lego_ev3_defconfig                        qmx6_defconfig
   at91sam9rlek_defconfig                mini2440_defconfig                        raspberrypi2_defconfig
   at91sam9x5ek_defconfig                minnowboard_defconfig                     raspberrypi_defconfig
   atmel_sama5d3_xplained_defconfig      minnowboard_max_defconfig                 riotboard_defconfig
   atmel_sama5d3_xplained_mmc_defconfig  mx53loco_defconfig                        s6lx9_microboard_defconfig
   atmel_sama5d3xek_defconfig            nitrogen6x_defconfig                      sheevaplug_defconfig
   atmel_sama5d4_xplained_defconfig      olimex_a20_olinuxino_lime_defconfig       telit_evk_pro3_defconfig
   atmel_sama5d4ek_defconfig             olimex_a20_olinuxino_lime_mali_defconfig  ts5x00_defconfig
   beaglebone_defconfig                  olimex_a20_olinuxino_micro_defconfig      udoo_quad_defconfig
   calao_qil_a9260_defconfig             olimex_imx233_olinuxino_defconfig         via_imx6_vab820_defconfig
   calao_snowball_defconfig              openblocks_a6_defconfig                   wandboard_defconfig
   calao_tny_a9g20_lpw_defconfig         pandaboard_defconfig                      warpboard_defconfig
   calao_usb_a9260_defconfig             qemu_aarch64_virt_defconfig               xilinx_zc706_defconfig
   calao_usb_a9263_defconfig             qemu_arm_nuri_defconfig                   zedboard_defconfig
   calao_usb_a9g20_lpw_defconfig         qemu_arm_versatile_defconfig
   ci20_defconfig                        qemu_arm_vexpress_defconfig
  

환경 설정하기

  EM-IMX6DQ보드는 freescale의 i.mx6q 프로세서이므로, freescale_imx6qsabreauto_defconfig, freescale_imx6qsabresd_defconfig 중 하나를 복사해서 사용하거나 둘 중하나를 그냥 사용하시면 됩니다.

  buildroot# cp configs/freescale_imx6qsabresd_defconfig configs/falinux_em-imx6dq_defconfig

  [환경 적용하기]
  buildroot# make falinux_em-imx6dq_defconfig
  mkdir -p /staff/tmp/buildroot/output/build/buildroot-config/lxdialog
  PKG_CONFIG_PATH="" make CC="/usr/bin/gcc" HOSTCC="/usr/bin/gcc" \
            obj=/staff/tmp/buildroot/output/build/buildroot-config -C support/kconfig -f Makefile.br conf
  make[1]: Entering directory `/staff/tmp/buildroot/support/kconfig'
  /usr/bin/gcc -I/usr/include/ncursesw   -DCURSES_LOC="<ncurses.h>" -DLOCALE  -I/staff/tmp/buildroot/output/build/buildroot-config -DCONFIG_=\"\"  -MM *.c > /staff/tmp/buildroot/output/build/buildroot-config/.depend 2>/dev/null || :
  make[1]: Leaving directory `/staff/tmp/buildroot/support/kconfig'
  make[1]: Entering directory `/staff/tmp/buildroot/support/kconfig'
  /usr/bin/gcc -I/usr/include/ncursesw   -DCURSES_LOC="<ncurses.h>" -DLOCALE  -I/staff/tmp/buildroot/output/build/buildroot-config -DCONFIG_=\"\"   -c conf.c -o /staff/tmp/buildroot/output/build/buildroot-config/conf.o
  /usr/bin/gcc -I/usr/include/ncursesw   -DCURSES_LOC="<ncurses.h>" -DLOCALE  -I/staff/tmp/buildroot/output/build/buildroot-config -DCONFIG_=\"\"  -I. -c /staff/tmp/buildroot/output/build/buildroot-config/zconf.tab.c -o /staff/tmp/buildroot/output/build/buildroot-config/zconf.tab.o
  /usr/bin/gcc -I/usr/include/ncursesw   -DCURSES_LOC="<ncurses.h>" -DLOCALE  -I/staff/tmp/buildroot/output/build/buildroot-config -DCONFIG_=\"\"   /staff/tmp/buildroot/output/build/buildroot-config/conf.o /staff/tmp/buildroot/output/build/buildroot-config/zconf.tab.o  -o /staff/tmp/buildroot/output/build/buildroot-config/conf
  rm /staff/tmp/buildroot/output/build/buildroot-config/zconf.tab.c
  make[1]: Leaving directory `/staff/tmp/buildroot/support/kconfig'
  #
  # configuration written to /staff/tmp/buildroot/.config
  #
  buildroot#

  buildroot# make menuconfig



다음 강좌에서는 make menuconfig를 설정하는 방법을 소개하도록 하겠습니다.