+ -
当前位置:首页 → 问答吧 → 安装nvidia的驱动一定要重新编译内核吗?

安装nvidia的驱动一定要重新编译内核吗?

时间:2003-07-27

来源:互联网

rt,老提示没有kernel的接口?

作者: lanb   发布时间: 2003-07-27

个人觉的还是重编译一下好,这样能保证内核和nvidia使用一样的
编译器

作者: llcspring   发布时间: 2003-07-27

要,至少到make dep 完成

作者: 听峰   发布时间: 2003-07-27

不用这么麻烦的,只要你有header就可以了,如果没有的话你按照这样来操作肯定可以的
1、查看一下你用的内核版本,然后安装你的相对应的headers,例如:
apt-get install kernel-headers-2.4.18-bf2.4
2、安装驱动时加上后面的参数,就是你的header的位置
sh NVIDIA-Linux-x86-0463.run --kernel-include-path=/usr/src/kernel-bf2.4/include/
3、vi /etc/X11/XFconfigure-4
#dri
#dbe
driver "nvidia"
4、vi /etc/modules 加入nvidia的驱动模块
ADD nvidia
5、重启以后就能看到nvidia的启动画面了。

祝你好运!

作者: losska   发布时间: 2003-07-28

losska 兄总结的很好,这里关于编译器版本问题我讲一下:
最好是保证相同的编译器版本。
首先了解一下当前运行的内核编译时使用的编译器:
$ cat /proc/version
version 2.4.21-2 (root@Crystal) (gcc version 2.95 20030626 (Debian prerelease)) #1 二 7月 15 21:15:18 CST 2003on
这里是我的信息。

然后检查当前编译器的版本:
$ gcc --version
Crystal:~# gcc --version
gcc (GCC) 3.3.1 20030722 (Debian prerelease)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ g++ --version
Crystal:~# g++ --version
g++ (GCC) 3.3.1 20030722 (Debian prerelease)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

很显然,我当前的 gcc 编译器版本过高,这样编译的模块可能会出问题或编译失败。

查看系统中装了几个版本的 gcc
$ dpkg -l gcc
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version Description
+++-==============-==============-============================================
ii gcc 3.3-1 The GNU C compiler.

可以看到我只有一个 3.3 版本的,而我实际需要的是 2.95 版本。

$ apt-cache search gcc
...
g++-2.95 - The GNU C++ compiler.
...
gcc-2.95 - The GNU C compiler.
.。。
说明 debian 提供了 gcc-2.95 版本。

$ apt-get install gcc-2.95 g++-2.95

这里不必担心,debian 允许多个版本的 gcc 共存。

$ 如何让系统使用 2.95 版本的编译器呢?
很简单。
/usr/bin$ gcc
gcc gcc-3.3 gcc-2.95 ...
/usr/bin$ g++
g++ g++-3.3 g++-2.95 ...

$ ls /usr/bin/gcc -al
$ ls /usr/bin/g++ -al
...
可以看到 gcc(g++) 不过是指向 gcc-3.3(g++-3.3) 的一个软连接。

$ rm -rf gcc g++
$ ln -s gcc-2.95 gcc
$ ln -s g++-2.95 g++

剩下的工作就不多说了,等你编译好模块,再把编译器换回原来的。

作者: quanliking   发布时间: 2003-07-28

我也装这个驱动了,不要编译内核的啊,下载的那个程序里边有个说明文件,照着做,一切都ok啊!

作者: pumpkin   发布时间: 2003-09-01

我的gcc是3.3.1,kernel是gcc3.3编译的2.4.20-3,用dpkg看,gcc却也是3.3,可是仍无法编译模块
不解,莫非还是要编译kernel?

作者: ai_ya   发布时间: 2003-09-01

在testing/unstable中,不需要编译,直接安装即可

unstable nvidia-kernel-common 1.0.4496-2 (2.5k) NVIDIA binary kernel module common files
unstable nvidia-glx-dev 1.0.4496-2.1 (81.5k) NVIDIA binary XFree86 4.x driver development files
unstable nvidia-glx-src 1.0.4349-1 (12.3k) NVIDIA binary XFree86 4.x driver
unstable nvidia-kernel-source 1.0.4496-2.1 (690.5K) NVIDIA binary kernel module source
unstable nvidia-kernel-src 1.0.4349-3 (26.3k) NVIDIA binary kernel module
unstable nvidia-glx 1.0.4496-2.1 (2237.3k) NVIDIA binary XFree86 4.x driver

看到了吧,直接安装binary包就行了,我没试过哟...
如果要搞开发,就把dev也装上

当然,你也可以直接下载source包自己编译

作者: carlos   发布时间: 2003-09-01