드라이버에는 Linux 소스가 필요합니다.

드라이버에는 Linux 소스가 필요합니다.

Git 저장소의 소스 코드에서 컴파일된 커널 이미지를 실행하는 Linux 시스템이 있습니다. Linux를 실행할 때 특정 NI 계측기용 드라이버를 설치하고 싶습니다. 설치 프로그램을 실행하려고 하면 드라이버에 필요한 Linux 커널 소스를 감지할 수 없다는 메시지가 나타납니다.

사용 가능한 소스가 있으므로 문제가 되지 않습니다. 하지만 해당 소스를 이 설치 프로그램에서 사용할 수 있게 만드는 방법을 모르겠습니다. 커널 소스는 전통적으로 특정 디렉토리에 보관되어 있습니까? 아니면 위치를 알려주는 환경 변수가 있습니까?

그리고 커널 소스코드는 어떻게 구성되어 있나요? 내가 가져온 Git 저장소에는 수많은 파일이 있었지만 그 중 많은 파일이 다른 플랫폼용으로 구축되거나 제작된 것 같았습니다. 커널 모듈에는 정확히 무엇이 필요합니까?

답변1

모듈 빌드 시스템에서는 .config. /lib/modules/$(uname -r)/build가장 쉬운 방법은 소스 디렉터리를 가리키는 심볼릭 링크를 만드는 것입니다.

sudo ln -s /path/to/kernel/source /lib/modules/$(uname -r)/build

답변2

전통적으로 커널 소스는 /usr/src/linux에 있습니다. 배포판에 Linux 소스 패키지가 있다면 아마도 그 패키지가 있을 것입니다. linux-sourceDebian 기반 배포판이나 kernel-develRedHat 기반 배포판 에 패키지를 설치해 보세요 .

관련 정보