分类: 嵌入式
2009-09-05 16:00:08
GCC版本不支持?
cd vmware-tools-distrib
./vmware-install.pl
到编译模块的时候,提示一个:不支持当前gcc版本,打开bin/vmware-config-tools.pl,仔细研究,发现其中有这么一段脚本:
if ($gcc_version =~ /^gcc version (egcs-)?(\d+\.\d+(\.\d+)*)/) {
return $2;
} else {
print wrap('Your compiler "' . $gHelper{'gcc'} . '" version "' .
$gcc_version . '" is not supported ' .
'by this version of ' . vmware_product_name() . '.' .
"\n\n", 0);
return 'no';
}
这就很明显了,Vmwaretools在获取gcc版本信息时是解析“gcc version …”,注意是英文version,然而中文版Ubuntu却把gcc的version翻译了,如下(执行gcc -v命令)
gcc 版本 4.3.3 (Ubuntu 4.3.3-5ubuntu4)
这样就有两种解决方法,第一种把那段脚本中的正则表达式改成:/^gcc 版本 (egcs-)?(\d+\.\d+(\.\d+)*)/ ;第二种方法就是设置English作为系统默认语言
vmhgfs编译过不了
hgfs模块是用来和host的共享文件夹交换文件,所以不编译该模块,后果很严重。
但是在进入到vmware-config-tools.pl这一步时却又报错。说是__grab_cache_page函数重定义了(Vmware现在都是最大的虚拟化供应商怎么犯这个错误了)。解决办法是进入vmware-tools-distrib/lib/modules/source目录解压vmhgfs.tar,然后进入mhgfs-on
page = __grab_cache_page(mapping, index);
将其修改为(867行)
page = grab_cache_page(mapping, index);
保存退出
然后备份原始的vmhgfs.tar文件:
mv vmhgfs.tar vmhgfs_old.tar
接着重新生成vmhgfs.tar文件
tar cvf vmhgfs.tar mhgfs-on
重新编译执行
鼠标焦点不能平滑切换
作为虚拟机,鼠标焦点的平滑切换是个很贴心的功能,少了这玩意儿还真是用的不爽。
解决方案呢,经过一番apt-cache的搜索,锁定一个包:xserver-xorg-input-vmmouse,装上,重启,搞定。