QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 746|回复: 5

提一个问题,关于NV的驱动,谢谢大家!

[复制链接]
发表于 2003-3-29 02:11:56 | 显示全部楼层 |阅读模式
小弟的RH8,内核升级为2.4.18-27.8.0,从NV的网站下的驱动没有合适的rpm包,用nvchooser检测让我使用NVIDIA_kernel-1.0-4191.src.rpm的内核,NVIDIA_GLX-1.0-4191.i386.rpm的驱动,但我照着说明rebuild以后得到如下错误信息:
RPM build errors:
    user buildmeister does not exist - using root
    group buildmeister does not exist - using root
    user buildmeister does not exist - using root
    group buildmeister does not exist - using root
    Bad exit status from /var/tmp/rpm-tmp.19366 (%install)
请问如何解决?谢谢诸位

注:我后来建立了buildmeister账户,可还是会报错,说找不到nvidia.o文件,真是头疼
发表于 2003-3-29 08:38:07 | 显示全部楼层
置顶帖!那么大的字都看不到,这个问题很多人问过了!
回复

使用道具 举报

发表于 2003-3-29 14:12:42 | 显示全部楼层
在RedHat80下安装nvidia显卡驱动

去www.nvidia.com下载官方驱动,有RPM和tar源代码两种包,因为RedHat80升级了2次kernel,所以为了通用起见,本文介绍如何安装源代码格式的驱动.

下载:
下载的地址为http://www.nvidia.com/view.asp?IO=linux_display_ia32_1.0-4191,这个地址是nvidia for Linux的最新驱动4191.
下载其源代码:GLX 和 Nvidia_kernel

编译:
# tar zxvf NVIDIA_GLX-1.0-4191.tar.gz
# cd NVIDIA_GLX-1.0-4191
# make;make install

# tar zxvf NVIDIA_kernel-1.0-4191.tar.gz
# cd NVIDIA_kernel-1.0-4191
# make;make install
好了,驱动就装好了,现在只需要配置XF86Config文件了

配置:
打开/etc/X11/XF86Config,找到
Driver "nv" (或者 Driver "vesa")改为: Driver "nvidia"
在Module区域添加:
Load "glx"
此外如果有下面的配置,请注释掉:
Load "dri"
Load "GLcore"
保存然后重起X-Windows即可,现在你就可以看到Nvidia的启动界面了,很爽吧.如果你对修改配置文件不熟悉也可以使用redhat-conifg-xfree86l来配置你的windows,很方便,这个程序会自动识别并加载nvidia的驱动.

附录:
支持的显卡芯片:
NVIDIA CHIP NAME DEVICE PCI ID

o RIVA TNT 0x0020
o RIVA TNT2 0x0028
o RIVA TNT2 Ultra 0x0029
o Vanta 0x002C
o RIVA TNT2 Model 64 0x002D
o Aladdin TNT2 0x00A0
o GeForce 256 0x0100
o GeForce DDR 0x0101
o Quadro 0x0103
o GeForce2 MX/MX 400 0x0110
o GeForce2 MX 100/200 0x0111
o GeForce2 Go 0x0112
o Quadro2 MXR/EX/Go 0x0113
o GeForce2 GTS 0x0150
o GeForce2 Ti 0x0151
o GeForce2 Ultra 0x0152
o Quadro2 Pro 0x0153
o GeForce4 MX 460 0x0170
o GeForce4 MX 440 0x0171
o GeForce4 MX 420 0x0172
o GeForce4 MX 440-SE 0x0173
o GeForce4 440 Go 0x0174
o GeForce4 420 Go 0x0175
o GeForce4 420 Go 32M 0x0176
o GeForce4 460 Go 0x0177
o Quadro4 550 XGL 0x0178
o GeForce4 440 Go 64M 0x0179
o Quadro4 NVS 0x017A
o Quadro4 500 GoGL 0x017C
o GeForce4 410 Go 16M 0x017D
o GeForce4 MX 440 with AGP8X 0x0181
o GeForce4 MX 440SE with AGP8X 0x0182
o GeForce4 MX 420 with AGP8X 0x0183
o Quadro4 580 XGL 0x0188
o Quadro4 280 NVS 0x018A
o Quadro4 380 XGL 0x018B
o NV18M 0x0186
o NV18M Pro 0x0187
o GeForce2 Integrated GPU 0x01A0
o GeForce4 MX Integrated GPU 0x01F0
o GeForce3 0x0200
o GeForce3 Ti 200 0x0201
o GeForce3 Ti 500 0x0202
o Quadro DCC 0x0203
o GeForce4 Ti 4600 0x0250
o GeForce4 Ti 4400 0x0251
o NV25 0x0252
o GeForce4 Ti 4200 0x0253
o Quadro4 900 XGL 0x0258
o Quadro4 750 XGL 0x0259
o Quadro4 700 XGL 0x025B
o GeForce4 Ti 4800 0x0280
o GeForce4 Ti 4200 with AGP8X 0x0281
o GeForce4 Ti 4800 SE 0x0282
o GeForce4 4200 Go 0x0286
o Quadro4 980 XGL 0x0288
o Quadro4 780 XGL 0x0289
o Quadro4 700 GoGL 0x028C
o NV30 0x0300
o NV30 0x0301
o NV30 0x0302
o NV30GL 0x0308
o NV30GL 0x0309
如果还有任何疑难问题,请参考/usr/share/doc/NVIDIA_GLX-1.0/README文件
回复

使用道具 举报

 楼主| 发表于 2003-3-29 19:41:22 | 显示全部楼层
楼上的大哥,我在kernel目录下make的时候总是得到一大堆错误说明:
: union has no member named `usecount'
nv.c:1519: `tnvl' undeclared (first use in this function)
nv.c:1532: warning: implicit declaration of function `copy_from_user'
nv.c:1553: warning: implicit declaration of function `copy_to_user'
nv.c:1557: warning: left-hand operand of comma expression has no effect
nv.c:1557: warning: value computed is not used
nv.c: In function `nv_kern_isr':
nv.c:1646: `nvl' undeclared (first use in this function)
nv.c: In function `nv_kern_bh':
nv.c:1663: `nvl' undeclared (first use in this function)
nv.c:1663: parse error before ')' token
nv.c: In function `nv_kern_rc_timer':
nv.c:1674: `nvl' undeclared (first use in this function)
nv.c:1674: parse error before ')' token
nv.c:1679: `jiffies' undeclared (first use in this function)
nv.c: At top level:
nv.c:1731: warning: `struct file' declared inside parameter list
nv.c:1731: warning: `struct inode' declared inside parameter list
nv.c:1732: conflicting types for `nv_kern_ctl_open'
nv.c:133: previous declaration of `nv_kern_ctl_open'
nv.c: In function `nv_kern_ctl_open':
nv.c:1734: `nvl' undeclared (first use in this function)
nv.c:1747: dereferencing pointer to incomplete type
nv.c:1749: union has no member named `usecount'
nv.c:1758: sizeof applied to an incomplete type
nv.c:1758: `GFP_KERNEL' undeclared (first use in this function)
nv.c:1761: sizeof applied to an incomplete type
nv.c: At top level:
nv.c:1788: warning: `struct file' declared inside parameter list
nv.c:1788: warning: `struct inode' declared inside parameter list
nv.c:1789: conflicting types for `nv_kern_ctl_close'
nv.c:134: previous declaration of `nv_kern_ctl_close'
nv.c: In function `nv_kern_ctl_close':
nv.c:1790: dereferencing pointer to incomplete type
nv.c:1798: `nvl' undeclared (first use in this function)
nv.c:1798: parse error before ')' token
nv.c:1807: `current' undeclared (first use in this function)
nv.c:1810: dereferencing pointer to incomplete type
nv.c:1811: dereferencing pointer to incomplete type
nv.c:1812: dereferencing pointer to incomplete type
nv.c:1814: union has no member named `usecount'
nv.c: At top level:
nv.c:1827: parse error before "poll_table"
nv.c:1828: warning: `struct file' declared inside parameter list
nv.c: In function `nv_kern_ctl_poll':
nv.c:1830: `nvl' undeclared (first use in this function)
nv.c:1834: parse error before ')' token
nv.c:1834: `file' undeclared (first use in this function)
nv.c:1837: `O_NONBLOCK' undeclared (first use in this function)
nv.c:1840: `wait' undeclared (first use in this function)
nv.c: In function `nv_set_hotkey_occurred_flag':
nv.c:1866: request for member `nv_state' in something not a structure or union
nv.c:1867: request for member `nv_state' in something not a structure or union
nv.c:1868: request for member `nv_state' in something not a structure or union
nv.c:1870: warning: implicit declaration of function `wake_up_interruptible'
nv.c:1870: request for member `event_queue' in something not a structure or union
nv.c: In function `nv_kern_read_cardinfo':
nv.c:1951: dereferencing pointer to incomplete type
nv.c:1956: warning: implicit declaration of function `sprintf'
nv.c:1971: warning: passing arg 1 of `nvos_find_agp_capability' from incompatible pointer type
nv.c: In function `nv_kern_read_agpinfo':
nv.c:2012: dereferencing pointer to incomplete type
nv.c:2016: dereferencing pointer to incomplete type
nv.c:2025: warning: passing arg 1 of `nvos_find_agp_capability' from incompatible pointer type
nv.c: In function `nv_kern_read_status':
nv.c:2067: warning: passing arg 1 of `nvos_find_agp_capability' from incompatible pointer type
nv.c:2075: warning: passing arg 1 of `nvos_find_agp_capability' from incompatible pointer type
nv.c: In function `nv_find_kernel_mapping':
nv.c:2131: parse error before ')' token
nv.c:2151: warning: return makes pointer from integer without a cast
nv.c:2158: parse error before ')' token
nv.c: In function `nv_find_agp_kernel_mapping':
nv.c:2185: parse error before ')' token
nv.c: In function `nv_get_phys_address':
nv.c:2218: `pgd_t' undeclared (first use in this function)
nv.c:2218: `pg_dir' undeclared (first use in this function)
nv.c:2219: `pmd_t' undeclared (first use in this function)
nv.c:2219: `pg_mid_dir' undeclared (first use in this function)
nv.c:2220: `pte_t' undeclared (first use in this function)
nv.c:2220: `pte__' undeclared (first use in this function)
nv.c:2220: `pte' undeclared (first use in this function)
nv.c:2220: warning: left-hand operand of comma expression has no effect
nv.c:2229: `PAGE_OFFSET' undeclared (first use in this function)
nv.c:2229: `high_memory' undeclared (first use in this function)
nv.c:2230: warning: implicit declaration of function `__pa'
nv.c:2233: `init_mm' undeclared (first use in this function)
nv.c:2235: `current' undeclared (first use in this function)
nv.c:2241: warning: implicit declaration of function `pmd_val'
nv.c:2250: parse error before ')' token
nv.c:2256: warning: implicit declaration of function `pte_val'
nv.c: In function `nv_alloc_pages':
nv.c:2279: `nvl' undeclared (first use in this function)
nv.c:2279: parse error before ')' token
nv.c: In function `nv_free_pages':
nv.c:2423: `nvl' undeclared (first use in this function)
nv.c:2423: parse error before ')' token
nv.c: In function `nv_lock_init_locks':
nv.c:2502: `nvl' undeclared (first use in this function)
nv.c:2502: parse error before ')' token
nv.c:2506: warning: implicit declaration of function `spin_lock_init'
nv.c: In function `nv_lock_rm':
nv.c:2515: `nvl' undeclared (first use in this function)
nv.c:2515: parse error before ')' token
nv.c:2517: warning: implicit declaration of function `spin_unlock_wait'
nv.c:2518: warning: implicit declaration of function `spin_lock_irq'
nv.c: In function `nv_unlock_rm':
nv.c:2525: `nvl' undeclared (first use in this function)
nv.c:2525: parse error before ')' token
nv.c:2527: warning: implicit declaration of function `spin_unlock_irq'
nv.c: In function `nv_lock_ldata':
nv.c:2534: `nvl' undeclared (first use in this function)
nv.c:2534: parse error before ')' token
nv.c:2537: warning: implicit declaration of function `spin_lock'
nv.c: In function `nv_unlock_ldata':
nv.c:2544: `nvl' undeclared (first use in this function)
nv.c:2544: parse error before ')' token
nv.c:2546: warning: implicit declaration of function `spin_unlock'
nv.c: In function `nv_lock_at':
nv.c:2554: `nvl' undeclared (first use in this function)
nv.c:2554: parse error before ')' token
nv.c: In function `nv_unlock_at':
nv.c:2564: `nvl' undeclared (first use in this function)
nv.c:2564: parse error before ')' token
nv.c: In function `nv_post_event':
nv.c:2581: `nvl' undeclared (first use in this function)
nv.c:2585: dereferencing pointer to incomplete type
nv.c:2586: parse error before ')' token
nv.c:2586: dereferencing pointer to incomplete type
nv.c: In function `nv_post_vblank':
nv.c:2603: `nvl' undeclared (first use in this function)
nv.c:2603: parse error before ')' token
nv.c: In function `nv_agp_init':
nv.c:2661: warning: implicit declaration of function `inter_module_get'
nv.c:2662: warning: implicit declaration of function `inter_module_put'
nv.c: In function `nv_agp_translate_address':
nv.c:2743: parse error before ')' token
nv.c: In function `nv_start_rc_timer':
nv.c:2789: `nvl' undeclared (first use in this function)
nv.c:2789: parse error before ')' token
nv.c:2799: `jiffies' undeclared (first use in this function)
nv.c: In function `nv_stop_rc_timer':
nv.c:2810: `nvl' undeclared (first use in this function)
nv.c:2810: parse error before ')' token
nv-linux.h: At top level:
nv-linux.h:280: storage size of `rc_timer' isn't known
nv.c:144: storage size of `nv_fops' isn't known
nv.c:1027: storage size of `nv_vm_ops' isn't known
make: *** [nv.o] Error 1

这只是一小部分,为什么那,本来很方便的事,到我这就怎么也不能成功,太郁闷了
回复

使用道具 举报

 楼主| 发表于 2003-3-29 20:29:57 | 显示全部楼层
终于找到症结所在了,原来不是显卡驱动的问题,是我升级内核以后没有升级内核源代码,导致编译时还是调用老的源代码,自然不行了.现在终于解决问题,很高兴,也提醒一下有类似问题的朋友注意!!!
回复

使用道具 举报

发表于 2003-3-31 22:58:33 | 显示全部楼层
编译nVidia的原代码是要求安装Linux kernel的源代码包的,我估计你没有安装一个叫做linux-source-2.14.18-27.8.0.i386.rpm的包吧。当下来,安上去,在编译试试看。祝你好运!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-17 18:51 , Processed in 0.098077 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表