我正在尝试在新安装的VMware版本7(内核版本3.10.0)上安装CEntOS工作站10.0.1。
我已经将vmnet.tar文件从/lib/vmware/ home /source复制到我的主目录进行调试。vmnet模块的构建失败,出现以下错误消息:
/bin/make -j12 auto-build HEADER_DIR=/lib/modules/3.10.0-123.el7.x86_64/build/include CC=/bin/gcc IS_GCC_3=no
Using 2.6.x kernel build system.
/bin/make -C /lib/modules/3.10.0-123.el7.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/kernels/3.10.0-123.el7.x86_64'
CC [M] /home/******/junk/vmnet-only/filter.o
/home/******/junk/vmnet-only/filter.c:206:1: error: conflicting types for ‘VNetFilterHookFn’
VNetFilterHookFn (unsigned int hooknum, // IN:
^
/home/******/junk/vmnet-only/filter.c:64:18: note: previous declaration of ‘VNetFilterHookFn’ was here
static nf_hookfn VNetFilterHookFn;
^
/home/******/junk/vmnet-only/filter.c:64:18: warning: ‘VNetFilterHookFn’ used but never defined [enabled by default]
/home/******/junk/vmnet-only/filter.c:206:1: warning: ‘VNetFilterHookFn’ defined but not used [-Wunused-function]
VNetFilterHookFn (unsigned int hooknum, // IN:
^
make[2]: *** [/home/******/junk/vmnet-only/filter.o] Error 1
make[1]: *** [_module_/home/******/junk/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/kernels/3.10.0-123.el7.x86_64'
make: *** [vmnet.ko] Error 2我在googled上搜索了一点,但是我没有发现任何特定于WS10.0.1的东西,虽然我确实找到了一些用于安装WS10.0.3的补丁,但是看起来这些补丁对于WS10.0.1是无效的。我认为这是因为他们在修补程序(KERNEL_VERSION)中修改的宏在违规文件filter.c中为no。
任何人都可以链接到这个问题的解决方案。
谢谢!
发布于 2014-08-05 11:20:12
我也有过类似的问题。找到了这一解决方案并发挥了作用:
cd /usr/lib/vmware/modules/source
tar -xvf vmnet.tar
cd vmnet-only
vi filter.c转到206和259行并替换字符串。
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)通过
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 0, 0)然后:
cd ..
tar -uvf vmnet.tar vmnet-only
rm -rf vmnet-only然后再次运行vmware工作站,它应该能够安装内核模块。祝好运!
发布于 2014-11-01 03:28:12
user3910091有正确的答案。这也适用于RHEL7上的10.0.3。奇怪的是,他们在10.0.3中对此进行了修补,但是他们的补丁程序使用>=,过滤器选项的顺序相反,但相同的小内核版本的更改似乎可以修复它。
cd /usr/lib/vmware/modules/source
tar -xvf vmnet.tar
cd vmnet-only
vi filter.c转到206和259行并替换字符串。
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)通过
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 0, 0)然后:
cd ..
tar -uvf vmnet.tar vmnet-only
rm -rf vmnet-only然后再次运行/usr/bin/vmware,它应该能够安装内核模块。
https://stackoverflow.com/questions/24921593
复制相似问题