Problem compiling NVIDIA-Linux-x86_64-260.19.36 with bumblebee-nvidia on Fedora 24 #814

Closed
gojun077 opened this Issue Nov 5, 2016 · 1 comment

Projects

None yet

1 participant

@gojun077
gojun077 commented Nov 5, 2016

Distro: Fedora 24
Kernel: Linux u36jcFedora 4.8.4-200.fc24.x86_64 #1 SMP Tue Oct 25 13:06:04 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Manufacturer and Model:
baseboard-manufacturer: ASUSTeK Computer Inc.
baseboard-product-name: U36JC
baseboard-version : 1.0
system-manufacturer : ASUSTeK Computer Inc.
system-product-name : U36JC
system-version : 1.0
bios-vendor : American Megatrends Inc.
bios-version : U36JC.206
bios-release-date : 02/25/2011

Bumblebee version:

$ rpm -q bumblebee-nvidia
bumblebee-nvidia-3.0-1.fc24.noarch
$ rpm -q bumblebee
bumblebee-3.2.1-12.fc24.x86_64

Description of Problem:
I copied the Nvidia installer blob NVIDIA-Linux-x86_64-260.19.36.run into /etc/sysconfig/nvidia and I also built bbswitch with dkms. When I first tried to build the Nvidia drivers with bumblebee-nvidia I got the following error:

[fedjun@u36jcFedora ~]$ sudo bumblebee-nvidia --debug
--force compile selected via /etc/sysconfig/nvidia/compile-nvidia-driver
--debug mode selected.
Building NVIDIA video drivers: Creating directory NVIDIA-Linux-x86_64-260.19.36
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 260.19.36...................................................................................................................................

ERROR: The kernel header file
       '/lib/modules/4.8.4-200.fc24.x86_64/build/include/linux/version.h' does not
       exist.  The most likely reason for this is that the kernel source files in
       '/lib/modules/4.8.4-200.fc24.x86_64/build' have not been configured.


ERROR: Installation has failed.  Please see the file
       '/var/log/nvidia-installer.log' for details.  You may find suggestions on
       fixing installation problems in the README available on the Linux driver
       download page at www.nvidia.com.

				   [FAILED]

This is not such a big deal, because version.h exists in the Fedora package kernel-headers for my current kernel version 4.8.4-200. The file can be found under /usr/include/linux/. So I simply created this symlink:
sudo ln -s /usr/include/linux/version.h /lib/modules/4.8.4-200.fc24.x86_64/build/include/linux/

I then executed bumblebee-nvidia once more:

[fedjun@u36jcFedora ~]$ sudo bumblebee-nvidia --debug
--force compile selected via /etc/sysconfig/nvidia/compile-nvidia-driver
--debug mode selected.
Building NVIDIA video drivers: Creating directory NVIDIA-Linux-x86_64-260.19.36
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 260.19.36...................................................................................................................................

ERROR: If you are using a Linux 2.4 kernel, please make sure
       you either have configured kernel sources matching your
       kernel or the correct set of kernel headers installed
       on your system.
       
       If you are using a Linux 2.6 kernel, please make sure
       you have configured kernel sources matching your kernel
       installed on your system. If you specified a separate
       output directory using either the "KBUILD_OUTPUT" or
       the "O" KBUILD parameter, make sure to specify this
       directory with the SYSOUT environment variable or with
       the equivalent nvidia-installer command line option.
       
       Depending on where and how the kernel sources (or the
       kernel headers) were installed, you may need to specify
       their location with the SYSSRC environment variable or
       the equivalent nvidia-installer command line option.


ERROR: Installation has failed.  Please see the file
       '/var/log/nvidia-installer.log' for details.  You may find suggestions on
       fixing installation problems in the README available on the Linux driver
       download page at www.nvidia.com.

				   [FAILED]

My Asus U36JC notebook uses the GeForce 310m card which is supported by the proprietary Nvidia 260.19.36 driver.

I am not currently using nouveau and I have the following kernel options added to my grub2 boot entry: nouveau.modeset=0 rd.driver.blacklist=nouveau

Any ideas why bumblebee-nvidia is failing?

Thanks,
Jun

bumblebee-bugreport-20161105_213623.tar.gz

@gojun077
gojun077 commented Nov 5, 2016

I was able to successfully install the Nvidia driver for GeForce 310m by trying a different binary blob. The problem was I was using a driver from 2011.01.21 found through the Nvidia page for the GeForce 310m drivers: http://www.nvidia.com/object/linux-display-amd64-260.19.36-driver

However more recent UNIX drivers for legacy Nvidia GPU's must be downloaded at a different URL:
http://www.nvidia.com/object/unix.html

In my case, I needed the NVIDIA-Linux-x86_64-340.98 driver which I downloaded from
http://www.nvidia.com/Download/driverResults.aspx/107868/en-us

The following page maps UNIX drivers to legacy Nvidia GPU models:
http://www.nvidia.com/object/IO_32667.html

TL;DR -- if you're using a legacy Nvidia GPU, don't download drivers from the product page; download from the UNIX drivers page listed above!

[fedjun@u36jcFedora nvidia]$ sudo bumblebee-nvidia --debug
--force compile selected via /etc/sysconfig/nvidia/compile-nvidia-driver
--debug mode selected.
Building NVIDIA video drivers: Creating directory NVIDIA-Linux-x86_64-340.98
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 340.98.................................................................................................................................................................................................................................
                   [  OK  ]
@gojun077 gojun077 closed this Nov 5, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment