Arch Linux 安装Vmware-workstation遇到的问题记录

安装过程不详解,请参照Archwiki :

https://wiki.archlinux.org/index.php/VMware

主要记录编译安装Vmware的内核模块时遇到的问题和处理方法,对应命令如下

1. -Werror型报错之变量类型错误

类似如下:

没有找到如何取消-Werror参数的办法,但我们可以修改源码解决这个问题。

Vmware内核模块的源码在 /usr/lib/vmware/modules/source下面,先到该目录下并解压源码归档。

用vim打开修改对应报错代码并保存退出:

修改好了再归档回去:

再进行编译安装这条报错信息应该就消失了。

2.-Werror型报错之implicit-function-declaration

示例

通过网上查找我们发现get_ds()已经被抛弃了,参见以下Github网址

https://github.com/torvalds/linux/commit/736706bee3298208343a76096370e4f6a5c55915

所以我们只要将get_ds()都修改成KERNEL_DS即可

保存退出并重新规档:

之后重新编译安装即可。

 

总结:

这个过程每个人遇到的问题不可能完全一样,但解决途径基本是一致的

  1. 明确报错类型,定位报错文件
  2. 根据已有知识或网络查找出问题所在然后进行源码修改
  3. 重新归档和执行模块编译安装

对于变量类型直接赋值导致的错误,进行强制转换即可。

对于一些舍弃的宏或者函数,则需要替代成新的可用的。

其他的暂时未遇到,遇到再来补充。