initramfs를 사용하여 트리 모듈과 커널에서 빌드할 때 순환 종속성을 피하는 방법은 무엇입니까?

initramfs를 사용하여 트리 모듈과 커널에서 빌드할 때 순환 종속성을 피하는 방법은 무엇입니까?

커널을 크로스 컴파일하고 있으며 장치 공급업체에서 제공한 트리 외부 커널 모듈이 있습니다. 커널이 처음에 빌드된 후 모듈이 제대로 실행되었습니다.

이제 커널에서 initramfs를 활성화하려고 합니다. 커널 모듈은 initramfs 이미지에 포함되어야 합니다. 이로 인해 순환 종속성이 발생합니다.

  • 커널은 initramfs 이미지 파일(에 설정됨 CONFIG_INITRAMFS_SOURCE) 에 따라 다릅니다.
  • initramfs 이미지 파일은 트리 외부 커널 모듈에 따라 다릅니다.
  • 트리 외부 커널 모듈은 빌드 중인 커널에 따라 다릅니다.

내 최선의 해결책은 다음과 같습니다.

  1. initramfs rootfs 이미지에 대한 빈 파일을 만듭니다.
  2. 커널 빌드
  3. 빌딩 블록
  4. 실제 initramfs 이미지 빌드
  5. 커널 재구축

그러나 이로 인해 make종속성 추적이 중단되고 정상적인 개발 주기 동안 불필요한 재구축이 많이 발생합니다. 실제로 전체 커널을 빌드하지 않고도 트리 외부 모듈에 필요한 도구를 빌드할 수 있는 커널 빌드 타겟이 있습니까?

관련 정보