커널 4.18.0이 설치된 CentOS 8에 NVIDIA 드라이버를 설치하려고 하면 로그 파일에 다음 오류가 표시됩니다.
error: implicit declaration of function 'drm_pci_init';
답변1
처음부터 시작하겠습니다. 먼저 개발자 패키지와 기타 패키지를 설치해야 합니다.
dnf groupinstall "Development Tools"
dnf install libglvnd-devel elfutils-libelf-devel
그런 다음 Nuveau-driver를 비활성화합니다(설치된 경우).
grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) nouveau.modeset=0"
드라이버 패키지를 완전히 제거할 수도 있습니다.
dnf remove xorg-x11-drv-nouveau
이제 명령줄로 재부팅하세요. X11과 OpenGL을 사용하는 모든 것이 작동하지 않습니다.
패치된 이전 드라이버를 다운로드해야 합니다. 내 경우에는 최신 버전이 v108이었지만 v107이 필요합니다. NVIDIA 홈페이지에서 가져오거나 wget을 사용하여 가져옵니다.
# Download the driver
wget https://de.download.nvidia.com/XFree86/Linux-x86_64/340.107/NVIDIA-Linux-x86_64-340.107.run
# Unpack the driver, do not install
bash NVIDIA-Linux-x86_64-340.107.run --extract-only
cd NVIDIA-Linux-x86_64-340.107/
# Get the patch from pastebin, or the NVIDIA developer forum (link below)
wget https://pastebin.com/raw/qsqxsBmZ -O patch_340.107.diff
# Apply the patch to the
patch -l -p0 < patch_340.107.diff
# If you have another kernel version of course you have to change the path accordingly
./nvidia-installer -a --kernel-source-path /usr/src/kernels/4.18.0-240.10.1.el8_3.x86_64/
패치는 다음 포럼 항목에서 제공됩니다.https://forums.developer.nvidia.com/t/solved-nvidia-340-107-linux-5-0-rc5-failed-to-build-kernel-module/70277