我在Windows7主机上的VMware机器上安装了Ubuntu12.04.2LTS。在安装内核头时,我似乎遇到了问题。
我做了:
sudo apt-get install gcc make build-essential linux-headers-$(uname -r)得到了这个:
Reading package lists... Done
Building dependency tree
Reading state information... Done
gcc is already the newest version.
build-essential is already the newest version.
linux-headers-3.5.0-28-generic is already the newest version.
make is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 100 not upgraded.但是,在安装VMware工具时,会出现以下错误:
make[1]: Entering directory `/usr/src/linux-headers-3.5.0-28-generic'
CC [M] /tmp/vmware-root/modules/vmhgfs-only/backdoor.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/backdoorGcc32.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/bdhandler.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/cpName.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/cpNameLinux.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/cpNameLite.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/dentry.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/dir.o
CC [M] /tmp/vmware-root/modules/vmhgfs-only/file.o
/tmp/vmware-root/modules/vmhgfs-only/file.c:122:4: warning: initialization from incompatible pointer type [enabled by default]
/tmp/vmware-root/modules/vmhgfs-only/file.c:122:4: warning: (near initialization for ‘HgfsFileFileOperations.fsync’) [enabled by default]
CC [M] /tmp/vmware-root/modules/vmhgfs-only/filesystem.o
/tmp/vmware-root/modules/vmhgfs-only/filesystem.c:48:28: fatal error: linux/smp_lock.h: No such file or directory
compilation terminated.
make[2]: *** [/tmp/vmware-root/modules/vmhgfs-only/filesystem.o] Error 1
make[1]: *** [_module_/tmp/vmware-root/modules/vmhgfs-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.5.0-28-generic'
make: *** [vmhgfs.ko] Error 2
make: Leaving directory `/tmp/vmware-root/modules/vmhgfs-only'任何帮助都很感激!
发布于 2020-09-16 06:50:54
来自未来的声音:我正在编译5.9.0rc5。源树正是从linux.org中得到的。我的平台:Ubuntu20.04.1(从一周前的18.04.5升级到现在)。没有VmWare,只是一个原始内核tarball,但是:
DKMS make.log for virtualbox-guest-6.1.10 for kernel 5.9.0-rc5 (x86_64)
Wed 16 Sep 2020 01:35:06 AM EDT
CC [M] /var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/VBoxGuest-linux.o
CC [M] /var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/VBoxGuest.o
CC [M] /var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/common/string/strformatrt.o
CC [M] /var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/combined-agnostic.o
In file included from /var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/VBoxGuest-linux.c:36:
/var/lib/dkms/virtualbox-guest/6.1.10/build/vboxguest/r0drv/linux/the-linux-kernel.h:141:11: fatal error: linux/smp_lock.h: No such file or directory
141 | # include <linux/smp_lock.h>
| ^~~~~~~~~~~~~~~~~~
compilation terminated.错误在两个地方;
/usr/src/virtualbox-guest-6.1.10/vboxsf/r0drv/linux
/usr/src/virtualbox-guest-6.1.10/vboxguest/r0drv/linux找到旧的、被遗忘的lineS,包围#if 0和#endif,在内核源目录中运行make并完成。我将这些更改放入修订控制中,等等,但这些步骤并不重要。
哦,版权现在是甲骨文,更新到2020年,但代码是纯2003。
发布于 2013-06-06 16:59:12
VMWare不会像内核生成器释放它们那样快速地更改它们的工具。因此,在本例中,您将不得不在没有安装VMware工具的情况下运行,直到VMWare一起操作并更新3.5.0-28内核级别的VMTools。
我会联系Vmware和抱怨,并要求他们提供一个ETA的改变。
也许他们已经有了一个可用的VMtools更新,但是Vmcenter软件可能还没有更新。因此,如果安装了最新的VMcenter,还可以向sys管理员询问VM基础设施。
发布于 2013-06-07 21:45:47
我不认为smp_lock.h是内核头,因为我的Ubuntu来宾上没有VMWare,我在Ubuntu12.04上有linux 3.2.0-45通用的,并且我能够毫无问题地安装VMWare工具。
我读过这里,从2.6.39开始就没有smp_lock.h了,所以我认为您有VMware工具的旧版本,或者VMWare Player或VMWare工作站的旧版本。
您可以在这里查看更多选项:https://help.ubuntu.com/community/VMware/Tools
https://askubuntu.com/questions/304897
复制相似问题