Debian make-kpkg를 사용하여 586 프로세서용 사용자 정의 커널 구축

Debian make-kpkg를 사용하여 586 프로세서용 사용자 정의 커널 구축

저는 i386 아키텍처용 맞춤형 코어를 구축하려고 노력 중이며 코어를 586 프로세서에 타겟팅하려고 노력해 왔습니다.

CONFIG_M586=y커널 소스 트리에 정의된 커널 구성이 있습니다 : ./arch/x86/configs/i386_vyos_defconfig

그런 다음 나는 make i386_vyos_defconfig달렸다 make-kpkg kernel_image. 그러나 빌드 프로세스 중 어느 시점에서 .config파일이 업데이트되어 CONFIG_M686=y.

"--subarch i586" 설정을 시도했지만 도움이 되지 않는 것 같습니다.

무슨 일이 일어나고 있으며 586을 대상으로 설정하거나 파일을 업데이트하지 않도록 어떻게 구성할 수 있습니까 .config?

내 커널 구성은 다음과 같습니다. https://gist.github.com/njh/d6191ee130620ccd190e9273864775bd

저는 Debian 8(jessie)에서 커널 패키지 버전 13.014+nmu1을 사용하고 있습니다.

답변1

나는 아직 그것을 고치는 방법을 찾지 못했지만 이제 내 문제는 버그이지 데비안 커널 빌드의 기능이 아니라고 확신합니다.

다음 이벤트 체인에 대한 커널 변경 사항을 추적했습니다.

  1. 달리기:make-kpkg kernel_image
  2. 이 실행make -f /usr/share/kernel-package/ruleset/minimal.mk debian
  3. 그러면 결국 uo 대상이 트리거됩니다.debian/stamp/pre-build-common
  4. 목표에 따라 다릅니다.debian/stamp/conf/vars
  5. 다음을 실행합니다.make -f ./debian/ruleset/kernel_version.mk debian_conf_var
  6. kernel_version.mk주요 Linux 커널 Makefile을 포함합니다.
  7. 어떤 이유로 이로 인해 Linux Makefile이 실행됩니다 make syncconfig. 그렇게 하면 안 될 것 같습니다.

내가 읽어본 바로는 아는 한Kconfig/kbuild에 관한 기사, syncconfig대상은 현재 구성을 가져와서 여기에서 일부 파생 파일을 생성해야 합니다. 그러나 어떤 이유로 인해 내 .config 파일도 변경되었습니다.

내 생각엔 이 토끼굴까지 충분히 갔다고 생각한다. 이제 도망칠 시간이다.

관련 정보