OpenWrt 및 교재 Q&A

문의 드립니다~

페이지 정보

작성자 황민구 작성일18-01-24 21:18 조회1,311회 댓글4건

본문

openwrt.org 사이트를 통해서 OpenWrt를 공부하고 있는 학생입니다.
이렇게 OpenWrt 커뮤니티가 있는것을 알게되어서 너무 기쁩니다.
그래서 제가 OpenWrt를 이용하여 라우터를 개발하고 있는데 어려움이 있어 도움을 받아보고자 문의드립니다!

현재 OpenWrt를 이용해서 라우터를 개발하고 있습니다.
라우터 기종은 Linksys사의 WRT1900AC(v1)으로 개발하고 있습니다.

라우터에 OpenWrt 펌웨어를 올리는 것까지는 성공을 하였습니다.
그래서 현재 진행하고 있는 단계는 아래와 같습니다.

# 자기만의 OpenWrt 펌웨어 이미지 파일을 만들어서 라우터에 올려서 사용하기
1. 호스트PC(Ubuntu in VBox)에서 공유기(WRT1900AC)에 맞는 펌웨어 이미지 파일을 만들기
2. 만든 펌웨어 이미지 파일을 공유기에 올려서 제대로 동작이 되는지 확인해보기


현재, make menuconfig를 통해서 타겟디바이스(WRT1900AC)에 맞게 셋팅을하여 Configure까지는 하였습니다.

이제 make를 하면 이미지 파일이 생성되야 하는데, make중에 에러가 발생해서 이미지 파일을 생성하지 못하고 있습니다.

혹시 다른분들은 이러한 문제를 겪어보셨는지,, 또 이러한 문제를 겪으셨다면 해결을 어떻게 하셨는지
이러한 에러가 발생하는 원인이 무엇일지 알고싶어 올립니다!

// 관리자 2018-01-24: 17-01-08 19:00 에 작성된 글입니다

댓글목록

최고관리자님의 댓글

최고관리자 작성일

make V=99를 통해서 어느 부분에서 에러가 발생했는지 확인해 보셔야 할 것 같아요

// 관리자 2018-01-24: 17-01-09 16:34 에 작성된 글입니다

황민구님의 댓글

황민구 작성일

다음과 같은 에러가 뜨는데,, 저는 이 에러가 무슨 의미인지 잘 모르겠네요

make[1]: Entering directory '/home/hmk/openwrt'
make[2]: Entering directory '/home/hmk/openwrt'
make[3]: Entering directory '/home/hmk/openwrt/target/linux'
make[4]: Entering directory '/home/hmk/openwrt/target/linux/mvebu'
/home/hmk/openwrt/scripts/kconfig.pl  + /home/hmk/openwrt/target/linux/generic/config-4.4 /home/hmk/openwrt/target/linux/mvebu/config-4.4 > /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target
awk '/^(#[[:space:]]+)?CONFIG_KERNEL/{sub("CONFIG_KERNEL_","CONFIG_");print}' /home/hmk/openwrt/.config >> /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target
echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target
echo "# CONFIG_KALLSYMS_ALL is not set" >> /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target
echo "CONFIG_KALLSYMS_UNCOMPRESSED=y" >> /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target
/home/hmk/openwrt/scripts/metadata.pl kconfig /home/hmk/openwrt/tmp/.packageinfo /home/hmk/openwrt/.config 4.4 > /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.override
/home/hmk/openwrt/scripts/kconfig.pl 'm+' '+' /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.target /dev/null /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.override > /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set
mv /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.old
grep -v INITRAMFS /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.old > /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set
echo 'CONFIG_INITRAMFS_SOURCE=""' >> /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set
rm -rf /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/modules
cmp -s /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.prev || { cp /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config; cp /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.prev; }
export MAKEFLAGS= ; [ -d /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/user_headers ] || make -C /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14 HOSTCFLAGS="-O2 -I/home/hmk/openwrt/staging_dir/host/include -I/home/hmk/openwrt/staging_dir/host/usr/include  -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="arm-openwrt-linux-muslgnueabi-" ARCH="arm" KBUILD_HAVE_NLS=no KBUILD_BUILD_USER="" KBUILD_BUILD_HOST="" CONFIG_SHELL="bash" V=''  CC="arm-openwrt-linux-muslgnueabi-gcc" INSTALL_HDR_PATH=/home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/user_headers headers_install
. /home/hmk/openwrt/include/shell.sh; grep '=[ym]' /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.config.set | LC_ALL=C sort | md5s > /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.vermagic
touch /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.configured
rm -f /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/vmlinux /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/System.map
make -C /home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14 HOSTCFLAGS="-O2 -I/home/hmk/openwrt/staging_dir/host/include -I/home/hmk/openwrt/staging_dir/host/usr/include  -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="arm-openwrt-linux-muslgnueabi-" ARCH="arm" KBUILD_HAVE_NLS=no KBUILD_BUILD_USER="" KBUILD_BUILD_HOST="" CONFIG_SHELL="bash" V=''  CC="arm-openwrt-linux-muslgnueabi-gcc" modules
make[5]: Entering directory '/home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14'
Makefile:653: Cannot use CONFIG_CC_STACKPROTECTOR_REGULAR: -fstack-protector not supported by compiler
make[5]: arm-openwrt-linux-muslgnueabi-gcc: Command not found
  CHK    include/config/kernel.release
  CHK    include/generated/uapi/linux/version.h
  CHK    include/generated/utsrelease.h
make[6]: 'include/generated/mach-types.h' is up to date.
  CC      kernel/bounds.s
/bin/sh: 1: arm-openwrt-linux-muslgnueabi-gcc: not found
Kbuild:44: recipe for target 'kernel/bounds.s' failed
make[6]: *** [kernel/bounds.s] Error 127
Makefile:987: recipe for target 'prepare0' failed
make[5]: *** [prepare0] Error 2
make[5]: Leaving directory '/home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14'
Makefile:25: recipe for target '/home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.modules' failed
make[4]: *** [/home/hmk/openwrt/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/linux-mvebu/linux-4.4.14/.modules] Error 2
make[4]: Leaving directory '/home/hmk/openwrt/target/linux/mvebu'
Makefile:13: recipe for target 'compile' failed
make[3]: *** [compile] Error 2
make[3]: Leaving directory '/home/hmk/openwrt/target/linux'
target/Makefile:21: recipe for target 'target/linux/compile' failed
make[2]: *** [target/linux/compile] Error 2
make[2]: Leaving directory '/home/hmk/openwrt'
target/Makefile:16: recipe for target '/home/hmk/openwrt/staging_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/stamp/.target_compile' failed
make[1]: *** [/home/hmk/openwrt/staging_dir/target-arm_cortex-a9+vfpv3_musl-1.1.15_eabi/stamp/.target_compile] Error 2
make[1]: Leaving directory '/home/hmk/openwrt'
/home/hmk/openwrt/include/toplevel.mk:192: recipe for target 'world' failed
make: *** [world] Error 2

최고관리자님의 댓글

최고관리자 작성일

크로스컴파일러인 arm-openwrt-linux-muslgnueabi-gcc을 못찾는 것 같네요
툴체인 설치는 하셨는지요?

// 관리자 2018-01-24: 17-01-12 20:59 에 작성된 글입니다

황민구님의 댓글

황민구 작성일

답변 주셔서 감사합니다~
OpenWrt Build System을 다시 재설치하고 make를 하니 에러없이 만들어졌습니다.. ㅜㅜ

다만 궁금한것은 툴체인은 git을 통해 openwrt build system을 설치하면 자동으로 설치가 되는게 아닌가요?
그부분이 좀 헷갈리네요.

제가 참고한 링크는 아래에 첨부했습니다.
https://wiki.openwrt.org/doc/howto/buildroot.exigence

// 관리자 2018-01-24: 17-01-21 18:49 에 작성된 글입니다