yocto - recipe 작성 3. do_install()

markyang92·2022년 5월 17일
1

yocto

목록 보기
8/53
post-thumbnail

do_install()

  • do_install를 통해 build 결과물을 ${D}(Destination) 에 install한다.
  • do_install${B}에서 수행된다.
  • Makefile이 있다면, 기본적으로 이 태스크는 make install을 자동실행한다.
  • D= ${WORKDIR}/image
  • do_install() 하기 전엔 레시피에서 지정한 빌드 결과는 ${WORKDIR}/build에 있음
    • 레시피에서, CMake를 이용한 build를 한다면!
    • build는 잘 하지만, do_install() 태스크에서 아무 것도 하지 않으면 build 결과물이 설치되지 않는다.

  • 그래서 do_install( ) task가 필요하다.

  • ${D}= ${WORKDIR}/image
    • ${D}, ${bindir}같은 값은 모르면, 1)meta/conf/bitbake.conf 에서 찾아보거나
      2)$ bitbake -e | grep "export bindir=" 로 찾아볼 것
  • ${WORKDIR}의 임시 rootfs 폴더에서만 install이 진행됨

-d: 디렉터리 생성

-m: move

  • do_install() task를 수행하고 나면

  1. ${WORKDIR}/image

  1. ${WORKDIR}/package

  1. ${WORKDIR}/packages-split

각각 위치에 install 된다.

profile
pllpokko@alumni.kaist.ac.kr

2개의 댓글

comment-user-thumbnail
2024년 3월 14일

안녕하세요.
좋은 정보가 깔끔하게 정리가 잘되어있네요.
혹시 보드에설치되었을때 프로그램이 /home/root/TEST 경로에 만들어지게 하려면 어떻게 해야 하는지 혹시 경험 있으신지요?
${D}/home/root/TEST 해도 안되고, 이렇게 저렇게 해도 계속 실패네요.

1개의 답글