Kernel-Modules
未找到 VMWare Player 的 Linux 標頭
我最近在我的機器上安裝了 debian 8,效果很好。當我嘗試安裝 vmware player 2.5.5-328052 時,vmware 軟體抱怨無法找到與我正在執行的核心匹配的 linux 標頭檔。
uname -r
產量3.16.0-4-686-pae
。所以我安裝了標頭(和 gcc),它的外觀如下:
olav@carina:~/Downloads$ ls -l /usr/src/ insgesamt 80024 drwxr-xr-x 2 root root 4096 Feb 28 19:43 linux-config-3.16 drwxr-xr-x 4 root root 4096 Mär 1 10:40 linux-headers-3.16.0-4-686-pae drwxr-xr-x 4 root root 4096 Mär 1 10:40 linux-headers-3.16.0-4-common lrwxrwxrwx 1 root root 24 Nov 22 20:32 linux-kbuild-3.16 -> ../lib/linux-kbuild-3.16 -rw-r--r-- 1 root root 81928908 Jan 17 20:41 linux-source-3.16.tar.xz
但是,vmware 仍然找不到標頭。
我究竟做錯了什麼?vmware 到底在尋找什麼?
謝謝你,奧拉夫
原因是,在某些版本的 Linux 核心中,VMware Tools 安裝程序所需的 version.h 文件已從 重定位
/usr/src/linux-headers-$(uname -r)/include/linux
到/usr/src/linux-headers-$(uname -r)/include/generated/uapi/linux
,並且安裝程序尚未更新以處理該問題。解決方案是在 VMware Tools 安裝程序預期的位置創建指向 version.h 的符號連結。
ln -s /usr/src/linux-headers-$(uname -r)/include/generated/uapi/linux/version.h /usr/src/linux-headers-$(uname -r)/include/linux/version.h