generated / autoconf.h은 (는) 무엇 이죠?


9

우리는 헤더뿐만 아니라 커널 소스를 요구하는 소프트웨어를 만들려고 노력하고 있습니다. 따라서 centos src rpm을 통해 커널 소스를 다운로드했습니다.

그러나 autoconf.h가 없습니다.

우리는 시도했다

  • .config 파일을 넣습니다 (/ boot에서 복사).

  • 운영 make oldconfig

그렇다면 autoconf.h 파일은 무엇입니까? 실제로 커널을 만들어야합니까?


누군가 Linux와 관련이없는 프로젝트의 빌드 아키텍처로 Kconfig를 사용하는 경우이 질문에 대한 답변은 약간 다릅니다. autoconf.h를 생성하려면 ./kconfig-frontends/frontends/conf/conf --silentoldconfig Kconfig
Étienne

답변:


12

이 파일은 include/generated/autoconf.h에서 생성되는 make prepare단계. 커널 모듈을 빌드하려는 경우 다음 make scripts단계 도 필요합니다 .

gunzip < /proc/config.gz > .config
make oldconfig
make prepare
make scripts

일반적으로 커널에는 헤더 패키지가 함께 제공됩니다. 먼저 설치해 보셨습니까? CentOS의 경우 kernel-devel패키지를 설치하십시오 . 자세한 내용은 http://wiki.centos.org/HowTos/I_need_the_Kernel_Source 에서 찾을 수 있습니다 .


감사! 예, 우리는 헤더 패키지를 설치했지만 어떤 이유로 configure 스크립트가 전체 소스를 요구했습니다. 링크 한 위키 페이지를 사용했습니다.
Stefan

완전성을 위해 CentOS에서 커널 설정은 /boot( uname -r올바른 것을 선택하는 것과 비교 ) 위치합니다.
Stefan

1
일부 배포판에 @Stefan (아치 리눅스 등)가에 있습니다 /lib/modules/$(uname -r)/build/.config( build에 일반적으로 심볼릭 링크 /usr/src/linux-$(uname -r)), 다른 사람이 사용 /boot/config-$(uname -r)(예 : 우분투, 데비안 분명히에 CentOS로). 컴파일 중에 활성화하면에서 사용할 수도 있습니다 /proc/config.gz.
Lekensteyn

0

파일 autoconf.h은 빌드 프로세스 중에 파일 에서 자동으로 생성 .conf됩니다. 많은 커널 소스 파일이을 사용 autoconf.h합니다.


1
서버 결함에 오신 것을 환영합니다! 우리는 이전 답변이 그렇지 않은 방식으로 질문을 해결하거나 더 나은 솔루션을 제공하기 위해 추가 답변을 선호합니다.
팔콘 Momot
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.