Jas*_*ter 6 vmware compiling 18.10
尝试使用 linux-5.0.1-050001-generic 在 Ubuntu-18.10 上构建 VMware 模块
vmware-modconfig --console --install-all
这是整个输出:https : //pastebin.com/d61HGWJR
在 /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:42 包含的文件中: ./include/linux/mm.h:52:29: 注意:'totalram_pages' 的先前定义在这里 静态内联 unsigned long totalram_pages(void) ^~~~~~~~~~~~~~ /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:在函数“HostIFReadUptimeWork”中: /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:1787:4: 错误:函数“do_gettimeofday”的隐式声明;你的意思是“do_settimeofday64”?[-Werror=隐式函数声明] do_gettimeofday(&tv); ^~~~~~~~~~~~~~~~ do_settimeofday64 /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:在函数“HostIF_MapUserMem”中: /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:3408:40: 错误:宏“access_ok”传递了 3 个参数,但只需要 2 个 if (!access_ok(VERIFY_WRITE, p, size)) { ^ /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:3408:9: 错误: 'access_ok' 未声明(首次在此函数中使用) if (!access_ok(VERIFY_WRITE, p, size)) { ^~~~~~~~~~ /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.c:3408:9:注意:每个未声明的标识符对于它出现的每个函数只报告一次 cc1:一些警告被视为错误 make[2]: *** [scripts/Makefile.build:277: /tmp/modconfig-QBnnBd/vmmon-only/linux/hostif.o] 错误 1 make[2]: *** 等待未完成的工作.... /tmp/modconfig-QBnnBd/vmmon-only/common/task.o:警告:objtool:Task_Switch()+0x4db:在 RETPOLINE 构建中找到间接调用 /tmp/modconfig-QBnnBd/vmmon-only/common/task.o:警告:objtool:.text:部分意外结束 make[1]: *** [Makefile:1553: _module_/tmp/modconfig-QBnnBd/vmmon-only] 错误 2 make[1]: 离开目录 '/usr/src/linux-headers-5.0.1-050001-generic' make: *** [Makefile:110: vmmon.ko] 错误 2 制作:离开目录'/tmp/modconfig-QBnnBd/vmmon-only' 制作:进入目录'/tmp/modconfig-QBnnBd/vmnet-only' 使用内核构建系统。 /usr/bin/make -C /lib/modules/5.0.1-050001-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \ MODULEBUILDDIR= 模块 make[1]: 进入目录'/usr/src/linux-headers-5.0.1-050001-generic' Makefile:189: ================== 警告 ================ Makefile:190: 'SUBDIRS' 将在 Linux 5.3 之后被删除 Makefile:191: 请改用“M=”或“KBUILD_EXTMOD” Makefile:192: ========================================== CC [M] /tmp/modconfig-QBnnBd/vmnet-only/driver.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/hub.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/userif.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/netif.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/bridge.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/procfs.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/smac_compat.o CC [M] /tmp/modconfig-QBnnBd/vmnet-only/smac.o /tmp/modconfig-QBnnBd/vmnet-only/userif.c:在函数“VNetUserIfMapPtr”中: /tmp/modconfig-QBnnBd/vmnet-only/userif.c:145:52: 错误:宏“access_ok”传递了 3 个参数,但只需要 2 个 if (!access_ok(VERIFY_WRITE, (void *)uAddr, size) || ^ /tmp/modconfig-QBnnBd/vmnet-only/userif.c:145:9: 错误: 'access_ok' 未声明(首次在此函数中使用) if (!access_ok(VERIFY_WRITE, (void *)uAddr, size) || ^~~~~~~~~~ /tmp/modconfig-QBnnBd/vmnet-only/userif.c:145:9:注意:每个未声明的标识符只针对它出现的每个函数报告一次 在 ./include/linux/pci.h:37 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/compat_netdevice.h:27, 来自 /tmp/modconfig-QBnnBd/vmnet-only/netif.c:43: ./include/linux/pci_ids.h:2278: 警告:“PCI_VENDOR_ID_VMWARE”重新定义 #define PCI_VENDOR_ID_VMWARE 0x15ad 在 /tmp/modconfig-QBnnBd/vmnet-only/net.h:38 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/vnetInt.h:26, 来自 /tmp/modconfig-QBnnBd/vmnet-only/netif.c:42: /tmp/modconfig-QBnnBd/vmnet-only/vm_device_version.h:56:注意:这是之前定义的位置 #define PCI_VENDOR_ID_VMWARE 0x15AD 在 ./include/linux/pci.h:37 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/compat_netdevice.h:27, 来自 /tmp/modconfig-QBnnBd/vmnet-only/netif.c:43: ./include/linux/pci_ids.h:2279: 警告:“PCI_DEVICE_ID_VMWARE_VMXNET3”重新定义 #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07b0 在 /tmp/modconfig-QBnnBd/vmnet-only/net.h:38 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/vnetInt.h:26, 来自 /tmp/modconfig-QBnnBd/vmnet-only/netif.c:42: /tmp/modconfig-QBnnBd/vmnet-only/vm_device_version.h:73:注意:这是之前定义的位置 #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07B0 CC [M] /tmp/modconfig-QBnnBd/vmnet-only/vnetEvent.o make[2]: *** [scripts/Makefile.build:277: /tmp/modconfig-QBnnBd/vmnet-only/userif.o] 错误 1 make[2]: *** 等待未完成的工作.... 在 /tmp/modconfig-QBnnBd/vmnet-only/net.h:38 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/vnetInt.h:26, 来自 /tmp/modconfig-QBnnBd/vmnet-only/bridge.c:53: /tmp/modconfig-QBnnBd/vmnet-only/vm_device_version.h:56: 警告:“PCI_VENDOR_ID_VMWARE”重新定义 #define PCI_VENDOR_ID_VMWARE 0x15AD 在 ./include/linux/pci.h:37 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/compat_netdevice.h:27, 来自 /tmp/modconfig-QBnnBd/vmnet-only/bridge.c:52: ./include/linux/pci_ids.h:2278:注意:这是之前定义的位置 #define PCI_VENDOR_ID_VMWARE 0x15ad 在 /tmp/modconfig-QBnnBd/vmnet-only/net.h:38 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/vnetInt.h:26, 来自 /tmp/modconfig-QBnnBd/vmnet-only/bridge.c:53: /tmp/modconfig-QBnnBd/vmnet-only/vm_device_version.h:73: 警告:“PCI_DEVICE_ID_VMWARE_VMXNET3”重新定义 #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07B0 在 ./include/linux/pci.h:37 包含的文件中, 来自 /tmp/modconfig-QBnnBd/vmnet-only/compat_netdevice.h:27, 来自 /tmp/modconfig-QBnnBd/vmnet-only/bridge.c:52: ./include/linux/pci_ids.h:2279:注意:这是之前定义的位置 #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07b0 make[1]: *** [Makefile:1553: _module_/tmp/modconfig-QBnnBd/vmnet-only] 错误 2 make[1]: 离开目录 '/usr/src/linux-headers-5.0.1-050001-generic' make: *** [Makefile:110: vmnet.ko] 错误 2 制作:离开目录'/tmp/modconfig-QBnnBd/vmnet-only' 无法安装所有模块。有关详细信息,请参阅日志。
小智 6
使用github.com/mkubecek/vmware-host-modules上的补丁。
您需要知道您正在尝试安装 VMWare Workstation 还是 Player,以及哪个版本。
您可以使用以下命令获取您的 VMWare 版本:
$ vmware -v
Run Code Online (Sandbox Code Playgroud)
在下面的示例中,我假设 VMWare Workstation 15.0.1:
$ git clone https://github.com/mkubecek/vmware-host-modules
$ cd vmware-host-modules
$ git checkout workstation-15.0.1
$ make
$ sudo make install
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3851 次 |
最近记录: |