Linux 커널 소스 코드에서 Linux 커널 헤더 파일을 만드는 방법은 무엇입니까?

Linux 커널 소스 코드에서 Linux 커널 헤더 파일을 만드는 방법은 무엇입니까?

저는 Tiny Core Linux를 사용하고 있으며 물론 커널 헤더가 필요한 Vmware Tools를 설치하려고 합니다. :-).

패키지에 커널 헤더를 제공하지 않는 것 같지만 커널 소스가 있습니다. 알고 보니 해당 소스 코드를 다운로드하고 헤더를 만들려고 했지만 내가 무엇을 하고 있는지 전혀 모르겠습니다.

내 Google 검색에서는 다음과 같이 들립니다.

make headers_install

실제로는 올바른 make 대상이지만 필요한 작업을 수행할 수 있지만 다음과 같은 오류가 발생합니다.

tc@box:/usr/src/linux-3.16.6$ make headers_install
  CHK     include/generated/uapi/linux/version.h
  HOSTCC  arch/x86/tools/relocs_32.o
In file included from arch/x86/tools/relocs_32.c:1:0:
arch/x86/tools/relocs.h:17:32: fatal error: tools/le_byteshift.h: No such file or directory
 #include <tools/le_byteshift.h>
                                ^
compilation terminated.
scripts/Makefile.host:134: recipe for target 'arch/x86/tools/relocs_32.o' failed
make[1]: *** [arch/x86/tools/relocs_32.o] Error 1
arch/x86/Makefile:181: recipe for target 'archscripts' failed
make: *** [archscripts] Error 2

내가 올바른 길을 가고 있나요? 종속성 같은 것이 누락된 걸까요, 아니면 완전히 잘못된 길을 가고 있는 걸까요?

누군가 나에게 진행 방법에 대한 조언을 줄 수 있습니까? "tools/le_byteshift.h"가 어떻게든 누락된 것 같지만, 어떤 패키지를 작동시키려면 어디서부터 분리해야 할지 잘 모르겠습니다.

소스 코드에서 커널 헤더 파일을 생성하는 방법은 무엇입니까? 어떤 조언이라도 대단히 감사하겠습니다!

답변1

~에서마크 플롯닉~의논평:

VMware 도구에는 생성된 삭제된 헤더가 아닌 실제 커널 헤더가 필요합니다 make headers_install. 스크립트가 입력하라는 메시지를 표시하면 include커널 소스 트리에 있는 디렉터리의 전체 경로를 입력하기만 하면 됩니다. vmware-config-tools.pl그리고 커널 소스가 실행 중인 커널과 정확히 일치하는지 확인하세요. 후속 커널 버전에서는 데이터 구조의 레이아웃이 변경되는 경우가 있습니다.

관련 정보