VMware Workstation: Lỗi, các mô-đun phải được biên dịch - Làm thế nào để khắc phục?


13

Khi tôi cố gắng khởi chạy VMware-WORKSTATION, tôi gặp phải lỗi sau:

Trước khi bạn có thể chạy VMware, một số mô-đun phải được biên dịch và tải vào kernel CANCEL / INSTALL

Không có lỗi, khi tôi chọn CÀI ĐẶT, không có gì xảy ra chỉ cần đóng lại.

Tôi cài đặt thủ công:

sudo apt-get install open-vm-tools open-vm-tools-dev open-vm-dkms open-vm-toolbox open-vm-tools-dev

Nhưng đã được cài đặt lên các phiên bản mới nhất.

Tôi sẽ bắt đầu một tiền thưởng để sửa lỗi này.

Ubuntu 13.04 64 bit

pst007x@pst007x-Serval-Professional:~$ uname -a
Linux pst007x-Serval-Professional 3.9.0-030900-generic #201304291257 SMP Mon Apr 29 16:58:15 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Tôi đã gỡ cài đặt và cài đặt lại tất cả các thành phần, nhưng cùng một vấn đề.

Tôi đã thử một Kernel khác, nhưng kết thúc với cùng một vấn đề.

Đã thử điều này như đề xuất: ở đây

#!/bin/bash
cd
cp -prn /usr/lib/vmware/modules/source /usr/lib/vmware/modules/source-backup
mkdir fixed
cd fixed
find /usr/lib/vmware/modules/source -name "*.tar" -exec tar xf '{}' \;

## add missing header on kernels
sed -i '/#include "compat_wait.h"/a\#include "compat_sched.h"' vmnet-only/vnetUserListener.c
sed -i '/#include "compat_page.h"/a\#include "compat_sched.h"' vmci-only/include/pgtbl.h
## comment out an invalid definition
sed -i 's|\(extern void poll_initwait(compat_poll_wqueues \*);\)|//\1|' *-only/include/compat_wait.h

tar cf vmblock.tar vmblock-only
tar cf vmci.tar vmci-only
tar cf vmmon.tar vmmon-only
tar cf vmnet.tar vmnet-only
tar cf vmppuser.tar vmppuser-only
tar cf vsock.tar vsock-only

cp -p *.tar /usr/lib/vmware/modules/source

cd /lib/modules/`uname -r`/build/include/linux
ln -s ../generated/autoconf.h
ln -s ../generated/utsrelease.h
cd

vmware-modconfig --console --install-all

# clean up
cd
rm -rf fixed
cd /lib/modules/`uname -r`/build/include/linux
rm autoconf.h utsrelease.h
cd /usr/lib/vmware/modules/
rm -rf source-backup
cd

Không hoạt động, kết quả của tập lệnh trong thiết bị đầu cuối:

pst007x@pst007x-Serval-Professional:~/Desktop$ sudo ./run
[sudo] password for pst007x: 
sed: can't read vmci-only/include/pgtbl.h: No such file or directory
sed: can't read *-only/include/compat_wait.h: No such file or directory
tar: vmppuser-only: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
ln: failed to create symbolic link ‘./autoconf.h’: File exists
ln: failed to create symbolic link ‘./utsrelease.h’: File exists
Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-tGleah/vmmon-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/hashFunc.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-tGleah/vmmon-only/vmcore/moduleloop.o
  LD [M]  /tmp/modconfig-tGleah/vmmon-only/vmmon.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/modconfig-tGleah/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-tGleah/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-tGleah/vmmon-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-tGleah/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/modconfig-tGleah/vmmon-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-tGleah/vmnet-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/filter.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-tGleah/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-tGleah/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/modconfig-tGleah/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-tGleah/vmnet-only/vmnet.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-tGleah/vmnet-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-tGleah/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory `/tmp/modconfig-tGleah/vmnet-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-tGleah/vmblock-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/block.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/control.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/dentry.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/file.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/filesystem.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/inode.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/module.o
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/stubs.o
/tmp/modconfig-tGleah/vmblock-only/linux/dentry.c:38:4: warning: initialisation from incompatible pointer type [enabled by default]
/tmp/modconfig-tGleah/vmblock-only/linux/dentry.c:38:4: warning: (near initialisation for ‘LinkDentryOps.d_revalidate’) [enabled by default]
/tmp/modconfig-tGleah/vmblock-only/linux/dentry.c: In function ‘DentryOpRevalidate’:
/tmp/modconfig-tGleah/vmblock-only/linux/dentry.c:104:7: warning: passing argument 2 of ‘actualDentry->d_op->d_revalidate’ makes integer from pointer without a cast [enabled by default]
/tmp/modconfig-tGleah/vmblock-only/linux/dentry.c:104:7: note: expected ‘unsigned int’ but argument is of type ‘struct nameidata *’
  CC [M]  /tmp/modconfig-tGleah/vmblock-only/linux/super.o
/tmp/modconfig-tGleah/vmblock-only/linux/control.c: In function ‘ExecuteBlockOp’:
/tmp/modconfig-tGleah/vmblock-only/linux/control.c:285:9: warning: assignment from incompatible pointer type [enabled by default]
/tmp/modconfig-tGleah/vmblock-only/linux/control.c:296:4: warning: passing argument 1 of ‘putname’ from incompatible pointer type [enabled by default]
In file included from include/linux/proc_fs.h:5:0,
                 from /tmp/modconfig-tGleah/vmblock-only/linux/control.c:28:
include/linux/fs.h:2040:13: note: expected ‘struct filename *’ but argument is of type ‘char *’
/tmp/modconfig-tGleah/vmblock-only/linux/inode.c:49:4: warning: initialisation from incompatible pointer type [enabled by default]
/tmp/modconfig-tGleah/vmblock-only/linux/inode.c:49:4: warning: (near initialisation for ‘RootInodeOps.lookup’) [enabled by default]
  LD [M]  /tmp/modconfig-tGleah/vmblock-only/vmblock.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "putname" [/tmp/modconfig-tGleah/vmblock-only/vmblock.ko] undefined!
  CC      /tmp/modconfig-tGleah/vmblock-only/vmblock.mod.o
  LD [M]  /tmp/modconfig-tGleah/vmblock-only/vmblock.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-tGleah/vmblock-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-tGleah/vmblock-only'
cp -f vmblock.ko ./../vmblock.o
make: Leaving directory `/tmp/modconfig-tGleah/vmblock-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-tGleah/vmci-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-tGleah/vmci-only/linux/driver.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/linux/vmciKernelIf.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciContext.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciDoorbell.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciDriver.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciDatagram.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciEvent.o
  CC [M]  /tmp/modconfig-tGleah/vmci-only/common/vmciHashtable.o
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:127:4: error: implicit declaration of function ‘__devexit_p’ [-Werror=implicit-function-declaration]
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:127:4: error: initialiser element is not constant
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:127:4: error: (near initialisation for ‘vmci_driver.remove’)
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:1754:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘vmci_probe_device’
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:1982:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘vmci_remove_device’
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:119:12: warning: ‘vmci_probe_device’ used but never defined [enabled by default]
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:121:13: warning: ‘vmci_remove_device’ used but never defined [enabled by default]
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:2063:1: warning: ‘vmci_interrupt’ defined but not used [-Wunused-function]
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:2137:1: warning: ‘vmci_interrupt_bm’ defined but not used [-Wunused-function]
/tmp/modconfig-tGleah/vmci-only/linux/driver.c:1717:1: warning: ‘vmci_enable_msix’ defined but not used [-Wunused-function]
cc1: some warnings being treated as errors
make[2]: *** [/tmp/modconfig-tGleah/vmci-only/linux/driver.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [_module_/tmp/modconfig-tGleah/vmci-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
make: *** [vmci.ko] Error 2
make: Leaving directory `/tmp/modconfig-tGleah/vmci-only'
Unable to install all modules.  See log for details.

pst007x@pst007x-Serval-Professional:~/Desktop$ 

Đã thử như đề xuất dưới đây, nhưng cùng một vấn đề:

pst007x@pst007x-Serval-Professional:~$ sudo vmware-modconfig --console --install-all
[sudo] password for pst007x: 
Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-IFjtiM/vmmon-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/hashFunc.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-IFjtiM/vmmon-only/vmcore/moduleloop.o
  LD [M]  /tmp/modconfig-IFjtiM/vmmon-only/vmmon.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/modconfig-IFjtiM/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-IFjtiM/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-IFjtiM/vmmon-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-IFjtiM/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/modconfig-IFjtiM/vmmon-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-IFjtiM/vmnet-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/filter.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-IFjtiM/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-IFjtiM/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /tmp/modconfig-IFjtiM/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-IFjtiM/vmnet-only/vmnet.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-IFjtiM/vmnet-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-IFjtiM/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory `/tmp/modconfig-IFjtiM/vmnet-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-IFjtiM/vmblock-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/block.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/control.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/file.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/filesystem.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/inode.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/module.o
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/stubs.o
/tmp/modconfig-IFjtiM/vmblock-only/linux/control.c: In function ‘ExecuteBlockOp’:
/tmp/modconfig-IFjtiM/vmblock-only/linux/control.c:285:9: warning: assignment from incompatible pointer type [enabled by default]
/tmp/modconfig-IFjtiM/vmblock-only/linux/control.c:296:4: warning: passing argument 1 of ‘putname’ from incompatible pointer type [enabled by default]
In file included from include/linux/proc_fs.h:5:0,
                 from /tmp/modconfig-IFjtiM/vmblock-only/linux/control.c:28:
include/linux/fs.h:2040:13: note: expected ‘struct filename *’ but argument is of type ‘char *’
/tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.c:38:4: warning: initialisation from incompatible pointer type [enabled by default]
/tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.c:38:4: warning: (near initialisation for ‘LinkDentryOps.d_revalidate’) [enabled by default]
/tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.c: In function ‘DentryOpRevalidate’:
/tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.c:104:7: warning: passing argument 2 of ‘actualDentry->d_op->d_revalidate’ makes integer from pointer without a cast [enabled by default]
/tmp/modconfig-IFjtiM/vmblock-only/linux/dentry.c:104:7: note: expected ‘unsigned int’ but argument is of type ‘struct nameidata *’
/tmp/modconfig-IFjtiM/vmblock-only/linux/inode.c:49:4: warning: initialisation from incompatible pointer type [enabled by default]
/tmp/modconfig-IFjtiM/vmblock-only/linux/inode.c:49:4: warning: (near initialisation for ‘RootInodeOps.lookup’) [enabled by default]
  CC [M]  /tmp/modconfig-IFjtiM/vmblock-only/linux/super.o
  LD [M]  /tmp/modconfig-IFjtiM/vmblock-only/vmblock.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "putname" [/tmp/modconfig-IFjtiM/vmblock-only/vmblock.ko] undefined!
  CC      /tmp/modconfig-IFjtiM/vmblock-only/vmblock.mod.o
  LD [M]  /tmp/modconfig-IFjtiM/vmblock-only/vmblock.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-IFjtiM/vmblock-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-IFjtiM/vmblock-only'
cp -f vmblock.ko ./../vmblock.o
make: Leaving directory `/tmp/modconfig-IFjtiM/vmblock-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/modconfig-IFjtiM/vmci-only'
/usr/bin/make -C /lib/modules/3.9.0-030900-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.9.0-030900-generic'
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/linux/driver.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/linux/vmciKernelIf.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciContext.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciDatagram.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciDoorbell.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciDriver.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciHashtable.o
  CC [M]  /tmp/modconfig-IFjtiM/vmci-only/common/vmciEvent.o
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:127:4: error: implicit declaration of function ‘__devexit_p’ [-Werror=implicit-function-declaration]
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:127:4: error: initialiser element is not constant
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:127:4: error: (near initialisation for ‘vmci_driver.remove’)
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:1754:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘vmci_probe_device’
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:1982:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘vmci_remove_device’
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:119:12: warning: ‘vmci_probe_device’ used but never defined [enabled by default]
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:121:13: warning: ‘vmci_remove_device’ used but never defined [enabled by default]
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:2063:1: warning: ‘vmci_interrupt’ defined but not used [-Wunused-function]
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:2137:1: warning: ‘vmci_interrupt_bm’ defined but not used [-Wunused-function]
/tmp/modconfig-IFjtiM/vmci-only/linux/driver.c:1717:1: warning: ‘vmci_enable_msix’ defined but not used [-Wunused-function]
cc1: some warnings being treated as errors
make[2]: *** [/tmp/modconfig-IFjtiM/vmci-only/linux/driver.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [_module_/tmp/modconfig-IFjtiM/vmci-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.9.0-030900-generic'
make: *** [vmci.ko] Error 2
make: Leaving directory `/tmp/modconfig-IFjtiM/vmci-only'
Unable to install all modules.  See log for details.

pst007x@pst007x-Serval-Professional:~$ sudo apt-get install build-essential
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
pst007x@pst007x-Serval-Professional:~$ 

Người điều hành: Tôi đã thử tất cả các đề xuất trong các bài đăng khác, nhưng chúng không giải quyết vấn đề cụ thể này.

Đây không phải là một bản sao, các bài đăng khác không giải quyết vấn đề cụ thể này và không cung cấp giải pháp


3
thử cái này> sudo vmware-modconfig --console --install-all
Qasim

sudo apt-get install build-
Essential

Sau khi google-fu: lỗi "vmware" "driver.c" "__devexit_p". Như đã nêu ở đây , bạn cần áp dụng một bản vá, vấn đề là: bản vá đó không dành cho kernel cụ thể của bạn. Nhưng ... dù sao thì hãy thử xem ... Bạn nên thử google-fu như thế, nhưng thêm phiên bản kernel của bạn. Tôi không tìm thấy gì cho phiên bản kernel của bạn, vì vậy bạn có thể cần yêu cầu một bản vá cho kernel đó trong các diễn đàn vmware.
Sức mạnh Bảo Bình

Tôi có bản vá, tôi đã cài đặt nó khi chạy Kernel trước đó, hoạt động tốt, sau đó .. nhưng không cài đặt trên hệ thống hiện tại của tôi ... Có lẽ vmware không thể chạy trên Kernel tôi đang sử dụng ...
pst007x

Câu trả lời:


12

Tôi có cùng một vấn đề. Sau một vài câu nói đùa (googling), tôi đã giải quyết vấn đề của mình theo các bước sau:

  1. (Tôi không chắc chắn rằng điều này có ảnh hưởng gì đến vấn đề của tôi không) khi @ pst007x thực thi

    cd /lib/modules/$(uname -r)/build/include/linux 
    sudo ln -s ../generated/utsrelease.h 
    sudo ln -s ../generated/autoconf.h 
    sudo ln -s ../generated/uapi/linux/version.h
    
  2. Tôi đã chạy mã theo như @Qasim đề xuất

    sudo vmware-modconfig --console --install-all
    

Tôi có Ubuntu 13.04-64bit, được cung cấp bởi kernel 3.8.0-21-generic và VMware Player 5.0.2 build-1031769

Chúc may mắn!


Tôi nghĩ rằng kernel 3.8.0-21 đã sửa lỗi vmware ....
Qasim

Nó đã không làm. Phải thêm vào liên kết version.h và chạy lệnh vmware-modconfig từ phía trên, sau đó cài đặt hoạt động.
ubfan1

1

Tôi tin rằng vấn đề là bạn có các tiêu đề kernel sai, có vẻ như một trong những gợi ý đó đang cố gắng sử dụng các tiêu đề kernel cho 3.9.0, không phải 13.04 sử dụng kernel phiên bản 3.88? Hãy thử lấy các tiêu đề kernel từ apt, do:

sudo apt-get install linux-headers-$(uname -r)(mượn từ nixCraft )

và sau đó thử cài đặt lại


Tôi gặp vấn đề với Kernel được vận chuyển với 13.04 (hoạt động tốt trên kernel cũ được vận chuyển với 12.10). Tôi đã phải nâng cấp Kernel của mình lên 3.9.0 vì sau khi nâng cấp lên 13.04, hệ thống của tôi sẽ liên tục bị treo khi khởi động, nâng cấp kernel đã giải quyết vấn đề này. Cảm ơn
pst007x

1

Tôi đã có cùng một vấn đề khi tôi nâng cấp từ 12.10 lên 13.04. Khi tôi khởi động VMware, tôi sẽ nhận được thông báo tương tự:

Before you can run VMware, several modules must be compiled and loaded into the kernel CANCEL / INSTALL

Khi tôi nhấp vào CÀI ĐẶT thì sẽ không có gì xảy ra. Tôi đã kiểm tra / var / log / và apport đã báo cáo lỗi sau:

ERROR: apport (pid 3061) Thu Apr 25 08:48:51 2013: executable: /usr/lib/vmware/bin/appLoader (command line "/usr/lib/vmware/bin/vmware-gksu --sudo-mode --message=Please\ enter\ your\ password\ to\ proceed. '/usr/bin/vmware-modconfig'\ --icon='vmware-workstation'\ --appname='VMware'")

Dường như có một vấn đề với / usr / lib / vmware / bin / vmware-gksu khiến nó bị sập. Tôi có thể tái tạo vấn đề một cách đáng tin cậy mỗi khi tôi chạy lệnh. Tôi đã có thể giải quyết vấn đề bằng cách chạy lệnh thủ công. Dưới đây là các lệnh tôi đã chạy:

sudo apt-get install linux-headers-3.8.0-19-generic
sudo /usr/bin/vmware-modconfig --icon=vmware-workstation --appname=VMware

Bạn có thấy một cái gì đó tương tự trong / var / log / apport không?


Sau khi thực hiện một số nghiên cứu bổ sung, tôi tin rằng vấn đề có liên quan đến việc loại bỏ hỗ trợ 13.04 cho gksu. Xem Askubfox.com/questions/284306/ trên
notkevin

Tôi vẫn có thể chạy lệnh gksu để khởi chạy Nautilus chẳng hạn ...
pst007x

Đã thử: sudo / usr / bin / vmware-modconfig --icon = vmware-workstation --appname = VMware ....... nhưng VMware khởi chạy và hiển thị thông báo
MÁY TÍNH

0

Tôi gặp vấn đề tương tự, kết hợp một số giải pháp ở trên có hiệu quả với tôi, tôi là nhà phát triển nên tôi đã có các tiêu đề linux gần đây nhất, nhưng chỉ trong trường hợp bạn không

sudo apt-get install linux-headers-$(uname -r)
sudo vmware-modconfig --console --install-all

Một vài lỗi đã được đưa ra, mặc dù chúng hiện đang hoạt động hoàn hảo.

Cần lưu ý rằng phương pháp này đã được thử nghiệm với VMWare Player, không phải máy trạm (khóa máy trạm của tôi đã hết hạn, phiên bản mới nhất tôi có là phiên bản 7)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.