NVIDIA

From CBLFS
Jump to navigationJump to search

Introduction to NVIDIA

NVIDIA provides free, but closed-source drivers for graphics and other hardware. Drivers for both NVIDIA and ULi products are provided although not all products are supported.

Project Homepage: http://www.nvidia.com/content/drivers/drivers.asp

Dependencies

Required

Caution.png

Note

This package requires the kernel sources. If you have removed the kernel sources then I suggest that you build it again. No need for installation though.

Extra Options

If for whatever reason you're building inside of a chroot or not running the kernel you plan to use with the nVidia driver, also pass the following:

--kernel-source-path= path to kernel source. The script first checks /lib/modules/`uname -r`/build then /usr/src/linux.
--x-prefix= X Windows prefix. Defaults to /usr/X11R6 if the installer detects Xorg <7.0. If Xorg > 7.0 is detected, the default is /usr.
--no-kernel-module: disable building the kernel module.
--ui='curses' (default) for ncurses interface or 'none' for no graphical interface.
-a accept the license agreement.
-x extract only, do not install.
-q do not ask any question, just accept the default answers.
-e expert mode. More questions and more verbose output.

Non-Multilib

Download Source: http://www.nvidia.com/object/linux_display_ia32_1.0-9755.html

x86

First we need to make the downloaded file executable:

chmod +x NVIDIA-Linux-x86-1.0-9755-pkg1.run

Install the driver with the following command (see above for more options):

./NVIDIA-Linux-x86-1.0-9755-pkg1.run \
    --x-prefix=$(pkg-config --variable=prefix xorg-server) \
    --no-precompiled-interface

x86_64

Download Source: http://www.nvidia.com/object/linux_display_amd64_1.0-9755.html

Multilib

First we need to make the downloaded file executable:

chmod +x NVIDIA-Linux-x86_64-1.0-9755-pkg2.run

Install the driver with the following command (see above for more options):

PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./NVIDIA-Linux-x86_64-1.0-9755-pkg2.run \
    --x-prefix=$(pkg-config --variable=prefix xorg-server) \
    --no-precompiled-interface

Pure64

Caution.png

Note

The nVidia installation script for 64-bit systems has the dynamic linker path hard-coded at /lib64/ld-linux-x86-64.so.2. If installing on a pure 64-bit system the dynamic linker will be installed in /lib. This has been discussed with the nVidia engineers. Their response, "According to the SysV processor-specific ABI supplement draft on http://refspecs.freestandards.org/, the standard Linux program interpreter for x86-64 systems is /lib64/ld-linux-x86-64.so.2. We can't easily support other interpreters because the path has to be stamped into the .interp section of the executable. If you need to use a different interpreter, you can either create a symlink like you did or unpack the .run file with the -x option, cd into the unpacked directory, and run the installer directly with /lib/ld-2.4.so ./nvidia-installer"

The symlink method is known to work, the alternate solution provided by nVidia engineers has not been tested. When using the symlink method, this link MUST REMAIN after installing the nVidia drivers.

If you have a Pure64 system create a link so the path to ld.so is correct:

mkdir -v /lib64 &&
ln -sv /lib/ld-2.4.so /lib64/ld-linux-x86-64.so.2

Next, make the downloaded file executable:

chmod +x NVIDIA-Linux-x86_64-1.0-9746-pkg2.run

Install the driver with the following command (see above for more options):

./NVIDIA-Linux-x86_64-1.0-9746-pkg2.run \
   --x-prefix=$(pkg-config --variable=prefix xorg-server) \
   --no-precompiled-interface

Configuring

To generate a new xorg.conf run the following:

nvidia-xconfig --output-xconfig=xorg.conf.new

Test the X server configuration with:

X -config xorg.conf.new

You should see nVidia's logo and then the normal server screen.

If it works properly move it to it's proper location:

mv -v xorg.conf.new /etc/X11/xorg.conf