免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 893 | 回复: 0
打印 上一主题 下一主题

ubuntu 10 安装 VMware Tool 时include 文件检测出错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-20 09:44 |只看该作者 |倒序浏览

问题:ubuntu 10 安装 VMware Tool 时include 文件检测出错

解决:

安装VMware可以改变虚拟机显示的大小,也可以让真机喝虚拟机实现字符串相互拷贝,相互分享共享目录......

步骤:

sudo ./vmware-install.pl

Console代码 
1.What is the location of the directory of C header files that match your running   
2.kernel? [/usr/src/linux/include] <直接按 Enter>   
3.   
4.The path "/usr/src/linux/include"  is not an existing directory.   
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] <直接按 Enter>

The path "/usr/src/linux/include" is not an existing directory. 

由于 Kernel 版本是 APT 抓下來的最新版,所以会需要输入 “/usr/src/linux-headers-2.6.35-22-generic/include “

要注意的是,VMWare Tools 安装时会询问目前系统使用的 Kernel header,所以如果 /usr/src 下有多个 Kernel header 目录,最好先执行 “uname -r“ 指令,确认应该使用那个本版。另外可以不直接使用 “/usr/src/linux-headers-2.6.35-22-generic/include” ,先 “sudo ln -s /usr/src/linux /usr/src/linux-headers-2.6.35-22-generic/include”

Console代码 
1.What is the location of the directory of C header files that match your running   
2.kernel? [/usr/src/linux/include] /usr/src/linux-headers-2.6 . 35 - 22 -generic/include   
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] /usr/src/linux-headers-2.6.35-22-generic/include
  

按回车以后,还是报错说,指定的Kernel headers喝当前系统使用的版本不匹配。

Console代码 
1.The directory of kernel headers (version @@VMWARE@@ UTS_RELEASE) does not match   
2.your running kernel (version 2.6 . 35 - 22 -generic). Even if the module were to   
3.compile successfully, it would not load into the running kernel.     
The directory of kernel headers (version @@VMWARE@@ UTS_RELEASE) does not match
your running kernel (version 2.6.35-22-generic). Even if the module were to
compile successfully, it would not load into the running kernel.   

但事实并不是不匹配,而是 Kernel 中有一个变量 UTS_RELEASE 的不存在了。以前这个定义放在 /usr/src/linux-headers-2.6.35-22-generic/include/linux/version.h ,而现在已经移到了/usr/src/linux-headers-2.6.35-22-generic/include/linux /utsrelease.h。所以简单的方法,我们只需要在version.h中添加 #define UTS_RELEASE "2.6.35-22-generic" (具体值使用 “uname -r“ 查看)

接下来继续,又会有新的错误提示!! -_-|| 找不到 autoconf.h 原因是因为 autoconf.h 不再VMware tools 安装程序预设的寻址目录中。

Console代码 
1.The path  "/usr/src/linux-headers-2.6.35-22-generic/include"  is a kernel header   
2.file directory, but it does not contain the file "linux/autoconf.h"  as   
3.expected. This can happen if the kernel has never been built, or if you have   
4.invoked the "make mrproper"  command in your kernel directory. In any case, you   
5.may want to rebuild your kernel.     
The path "/usr/src/linux-headers-2.6.35-22-generic/include" is a kernel header
file directory, but it does not contain the file "linux/autoconf.h" as
expected. This can happen if the kernel has never been built, or if you have
invoked the "make mrproper" command in your kernel directory. In any case, you
may want to rebuild your kernel.   

可以简单的把它链接过来:

cd /usr/src/linux-headers-2.6.35-22-generic/include/linux

sudo ln -s ../generated/autoconf.h ./ 

然后应该能顺利完成安装了。

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP