![Debian 11의 /lib/linux-kbuild에서 스크립트를 수정하는 방법: pahole-flags.sh를 찾을 수 없습니다.](https://linux55.com/image/215388/Debian%2011%EC%9D%98%20%2Flib%2Flinux-kbuild%EC%97%90%EC%84%9C%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%88%98%EC%A0%95%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%3A%20pahole-flags.sh%EB%A5%BC%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
현재 넷맵을 설치하려고 하는데 커널을 수정해야 합니다. 그러나 커널 헤더를 설치한 후 /lib/linux-kbuild-5.10/scripts
예상했던 일부 스크립트가 누락된 것을 발견했습니다. 여기에는 "찾을 수 없음" 및 "해당 파일 없음" 오류가 포함되어 pahole-flags.sh
있으며 mkmakefile
그 결과 각각 오류가 발생합니다.
내가 찾은이것최근 버그 보고에 따르면 이것이 안정 버전으로 복귀한 것으로 나타났습니다. 또한 이전 버전을 수정했다고 명시되어 있습니다.이것범죄. 그러나 이 커밋이 하는 일은 make 파일을 수정하는 것뿐입니다.
"repo xy의 스크립트를 이 디렉토리에 복사하기"와 같은 쉬운 수정 방법이 있습니까? 아니면 어떻게든 커널의 일부를 다시 컴파일/업그레이드해야 합니까? 저는 아직 Linux 시스템에 능숙하지 않으므로 도움을 주시면 감사하겠습니다.
답변1
당신이 언급한 커밋데비안 커널 헤더 패키지를 빌드하는 데 사용되는 Makefile의 일부를 수정합니다( linux-headers-<kernel version>-<package version>_<arch>.deb
). 즉, pahole-flags.sh
향후 커널 버전의 적절한 패키지에 포함될 스크립트를 커밋합니다.
커널 구성 및 빌드 프로세스가 스크립트를 변경하지 않는 것 같으므로 적절한 버전의 Linux 커널 소스에서 스크립트를 얻을 수 있습니다(예:이는 5.10 시리즈 커널에 적용됩니다./lib/linux-kbuild-5.10/scripts
) 넷맵이 찾을 것으로 예상되는 위치에 배치합니다 .
mkmakefile
스크립트 에도 동일하게 적용됩니다 (이는 5.10 시리즈 커널에 적용됩니다.).
그러나 mkmakefile
커널을 빌드하는 데 필요한 기능이 5.15 커널 시리즈(이것이 차이점이다) mkmakefile
더 이상 별도의 스크립트로 존재하지 않습니다. 따라서 netmap이 여전히 이에 의존하는 경우 필요한 기능 자체를 구현해야 합니다. 하지만 커널 버전 5.10에서도 mkmakefile
두 줄의 Makefile만 출력되는 것 같은데, 그 중 하나는 단지 주석일 뿐이므로 mkmakefile
.