真的无法理解为什么各种闭源驱动不支持 kernel 3.10 难道...?
难道是我编译的内核有问题,头文件存放位置有问题?之前 3.4 的内核至今的修补版本一直都不支持华硕某主板的网卡,所以只好升级到 3.10。
不过 3.10 内核至今没发现包括 AMD NVIDIA VBOX 在内的哪款闭源驱动能成功安装的。 错误信息是什么敢说吗? 有什么不敢说的。
我曾经有挖空心思去软链所有缺失的头文件,但最后还是没能通过,可以说闭源驱动似乎没有针对 3.10 去设计过,而 3.10 或许真的变化太大。nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Sat Jan 11 18:53:51 2014
installer version: 331.20
PATH: /usr/lib64/qt4/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
nvidia-installer command line:
./nvidia-installer
Using: nvidia-installer ncurses user interface
-> License accepted.
-> Installing NVIDIA driver version 331.20.
-> There appears to already be a driver installed on your system (version: 331.20).As part of installing this driver (version: 331.20), the existing driver will be uninstalled.Are you sure you want to continue? ('no' will abort installation) (Answer: Yes)
-> Performing CC sanity check with CC="cc".
-> Kernel source path: '/lib/modules/3.10.17/source'
-> Kernel output path: '/lib/modules/3.10.17/build'
-> Performing rivafb check.
-> Performing nvidiafb check.
-> Performing Xen check.
-> Performing PREEMPT_RT check.
-> Cleaning kernel module build directory.
executing: 'cd ./kernel; make clean'...
-> Building NVIDIA kernel module:
executing: 'cd ./kernel; make module SYSSRC=/lib/modules/3.10.17/source SYSOUT=/lib/modules/3.10.17/build NV_BUILD_MODULE_INSTANCES='...
NVIDIA: calling KBUILD...
make: 进入目录“/usr/lib/modules/3.10.17/build”
make -C /lib/modules/3.10.17/build \
KBUILD_SRC=/usr/lib/modules/3.10.17/build \
KBUILD_EXTMOD="/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel" -f /usr/lib/modules/3.10.17/build/Makefile \
modules
test -e include/generated/autoconf.h -a -e include/config/auto.conf || ( \
echo >&2; \
echo >&2 "ERROR: Kernel configuration is invalid."; \
echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";\
echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo >&2 ; \
/bin/false)
mkdir -p /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/.tmp_versions ; rm -f /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/.tmp_versions/*
make -f /usr/lib/modules/3.10.17/build/scripts/Makefile.build obj=/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel
cc -Wp,-MD,/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/.nv.o.d-nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.8.0/include -I/usr/lib/modules/3.10.17/build/arch/x86/include -Iarch/x86/include/generated-I/usr/lib/modules/3.10.17/build/include -Iinclude -I/usr/lib/modules/3.10.17/build/arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I/usr/lib/modules/3.10.17/build/include/uapi -Iinclude/generated/uapi -include /usr/lib/modules/3.10.17/build/include/linux/kconfig.h -I/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -m64 -mno-sse -mpreferred-stack-boundary=3 -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -fstack-protector -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_
AVX2=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -Wframe-larger-
than=1024 -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -DNV_MODULE_INSTANCE=0 -DNV_BUILD_MODULE_INSTANCES=0 -UDEBUG -U_DEBUG -DNDEBUG -I/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel -Wall -MD -Wsign-compare -Wno-cast-qual -Wno-error -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"331.20\" -Wno-unused-function -Wuninitialized -mno-red-zone -mcmodel=kernel -DNV_UVM_ENABLE -D__linux__ -DNV_DEV_NAME=\"nvidia\"-DMODULE-D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)"-D"KBUILD_MODNAME=KBUILD_STR(nvidia)" -c -o /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/.tmp_nv.o /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv.c
In file included from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest.h:1:0,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv-linux.h:15,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv.c:13:
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/macros.h:1:2: 错误:#error INIT_WORK() conftest failed!
#error INIT_WORK() conftest failed!
^
In file included from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest.h:2:0,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv-linux.h:15,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv.c:13:
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:1:2: 错误:#error remap_page_range() conftest failed!
#error remap_page_range() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:3:2: 错误:#error vmap() conftest failed!
#error vmap() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:12:2: 错误:#error kmem_cache_create() conftest failed!
#error kmem_cache_create() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:13:2: 错误:#error on_each_cpu() conftest failed!
#error on_each_cpu() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:14:2: 错误:#error smp_call_function() conftest failed!
#error smp_call_function() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:19:2: 错误:#error acpi_walk_namespace() conftest failed!
#error acpi_walk_namespace() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:20:2: 错误:#error acpi_os_wait_events_complete() conftest failed!
#error acpi_os_wait_events_complete() conftest failed!
^
/tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/conftest/functions.h:22:2: 错误:#error pci_dma_mapping_error() conftest failed!
#error pci_dma_mapping_error() conftest failed!
^
In file included from /usr/lib/modules/3.10.17/build/include/linux/utsname.h:5:0,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv-linux.h:44,
from /tmp/selfgz9157/NVIDIA-Linux-x86_64-331.20/kernel/nv.c:13:
/usr/lib/modules/3.10.17/build/include/linux/sched.h:11:36: 致命错误:asm/param.h:没有那个文件或目录
#include <asm/param.h> /* for HZ */
^
编译中断。
make: *** 错误 1
make: *** 错误 2
make: *** 错误 2
make: 离开目录“/usr/lib/modules/3.10.17/build”
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make: *** 错误 1
-> Error.
ERROR: Unable to build the NVIDIA kernel module.
-> done.
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.
内核经常变接口,所以随时要用最新版的驱动。
nvidia 还不错的,更新一直比较快,只是需要用他的测试版。 N 卡需要靠各对应不同版本驱动的补丁,这些补丁也很激进,或得你升最新的内核....,A 卡无解或者开源驱动。 这次直接上 3.13 了,毛病出在 version.h 定义内核版本号的文件位置变化了,打包时就在原位置生成了个空文件,而闭源驱动在编译模块时仍然先从旧位置开始,于是就一直对不上内核版本号。
页:
[1]