ubuntu 客户机安装VMware tools时出现编译错误,无法与主机共享文件

灰太狼 2023-06-15 07:11 14阅读 0赞
  1. <!--一个博主专栏付费入口结束-->
  2. <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css">
  3. <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-4a3473df85.css">
  4. <div class="htmledit_views" id="content_views">

主机:win7旗舰版

vmware workstation 10.0.7 (其他10.x版本也有这个问题)

客户机:Ubuntu14.04.4-16.x

安装vmware tools时出现下列编译错误,共享文件夹的功能不能实现,剪贴板等正常。

下面是部分错误代码:

  1. <span style=
  2. "font-size:14px;">/tmp/modconfig-O5xscq/vmhgfs-only/dir.c: In function ‘HgfsPackDirOpenRequest’:
  3. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  4. 417:
  5. 26: error: ‘struct file’ has no member named ‘f_dentry’
  6. file->f_dentry) <
  7. 0) {
  8. ^
  9. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c: In function ‘HgfsDirLlseek’:
  10. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  11. 707:
  12. 32: error: ‘struct file’ has no member named ‘f_dentry’
  13. struct dentry *dentry = file->f_dentry;
  14. ^
  15. In file included from /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  16. 39:
  17. 0:
  18. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c: In function ‘HgfsReaddirNextEntry’:
  19. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  20. 993:
  21. 31: error: ‘
  22. struct file’ has no member named ‘f_dentry’
  23. si =
  24. HGFS_SB_TO_COMMON(
  25. file->
  26. f_dentry->
  27. d_inode->
  28. i_sb);
  29. ^
  30. /tmp/modconfig-O5xscq/vmhgfs-only/
  31. module.h:
  32. 89:
  33. 62: note: in definition of macro ‘HGFS_SB_TO_COMMON’
  34. #define HGFS_SB_TO_COMMON(sb) ((HgfsSuperInfo *)(sb)->s_fs_info)
  35. ^
  36. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  37. 1082:
  38. 26: error: ‘
  39. struct file’ has no member named ‘f_dentry’
  40. *entryIno = file->f_dentry->d_inode->i_ino;
  41. ^
  42. In file included from /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  43. 30:
  44. 0:
  45. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  46. 1088:
  47. 44: error: ‘
  48. struct file’ has no member named ‘f_dentry’
  49. *entryIno = compat_parent_ino(file->f_dentry);
  50. ^
  51. /tmp/modconfig-O5xscq/vmhgfs-only/./shared/compat_fs.h:
  52. 120:
  53. 46: note: in definition of macro ‘compat_parent_ino’
  54. #define compat_parent_ino(dentry) parent_ino(dentry)
  55. ^
  56. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  57. 1093:
  58. 52: error: ‘
  59. struct file’ has no member named ‘f_dentry’
  60. *entryIno = HgfsGetFileInode(&entryAttrs, file->f_dentry->d_inode->i_sb);
  61. ^
  62. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c: In function ‘HgfsDoReaddir’:
  63. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  64. 1173:
  65. 13: error: ‘
  66. struct file’ has no member named ‘f_dentry’
  67. !(file->f_dentry) ||
  68. ^
  69. /tmp/modconfig-O5xscq/vmhgfs-only/dir.c:
  70. 1174:
  71. 13: error: ‘
  72. struct file’ has no member named ‘f_dentry’
  73. !(file->f_dentry->d_inode)) {
  74. ^
  75. scripts/Makefile.build:
  76. 257: recipe
  77. for target
  78. '/tmp/modconfig-O5xscq/vmhgfs-only/dir.o' failed
  79. make[
  80. 2]: *** [/tmp/modconfig-O5xscq/vmhgfs-only/dir.o] Error
  81. 1
  82. make[
  83. 2]: ** Esperando que outros processos terminem.
  84. Makefile:
  85. 1394: recipe
  86. for target
  87. '_module_/tmp/modconfig-O5xscq/vmhgfs-only' failed
  88. make[
  89. 1]: *** [_module_/tmp/modconfig-O5xscq/vmhgfs-only] Error
  90. 2
  91. make[
  92. 1]: Leaving directory
  93. '/usr/src/linux-headers-3.19.0-15-generic'
  94. Makefile:
  95. 120: recipe
  96. for target
  97. 'vmhgfs.ko' failed
  98. make: *** [vmhgfs.ko] Error
  99. 2
  100. make: Leaving directory
  101. '/tmp/modconfig-O5xscq/vmhgfs-only'
  102. </span>

解决方法:

  1. 确保 open-vm-tools没有安装。

sudo apt-get remove open-vm-tools

2.确保完成更新

sudo apt-get update

3.安装了git

sudo apt-get install git

4.运行命令从库中获取工具.

sudo git clone https://github.com/rasa/vmware-tools-patches.git

或者

sudo git clone https://github.com/rasa/vmware-tools-patches

5.进入vmware-tools-folder目录

cd vmware-tools-patches

6.运行补丁下载工具

sudo ./download-tools.sh

下载所有的补丁,或者

sudo ./download-tools.sh latest

下载最新的补丁

7.解压并打补丁

sudo ./untar-and-patch.sh

8.运行 complie.sh file

sudo ./compile.sh

下面的图片就是我打完补丁后的共享文件夹截图:

20161013155329951

本文转自:https://communities.vmware.com/thread/509898?start=0&tstart=0

原文中是在vmware workstation 11中安装Ubuntu 15.04,但是经过测试,在vmware 10中安装Ubuntu 14.04也可以使用同样的解决方法。

发表评论

表情:
评论列表 (有 0 条评论,14人围观)

还没有评论,来说两句吧...

相关阅读