toni@vm-ubuntu:~$ sudo apt-get update && sudo apt-get upgrade
[sudo] password for toni: 
Ign http://de.archive.ubuntu.com trusty InRelease
…
Fetched 1.772 kB in 8s (202 kB/s)                                              
Reading package lists... Done
…
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.

toni@vm-ubuntu:~$ sudo apt-get install -y build-essential
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.

toni@vm-ubuntu:~$ sudo apt-get install linux-headers-`uname -r`
Reading package lists... Done
Building dependency tree       
Reading state information... Done
linux-headers-3.13.0-46-generic is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.

Starting VMware tools installation: 

toni@vm-ubuntu:~$ mkdir /mnt/cdrom
mkdir: cannot create directory ‘/mnt/cdrom’: File exists

toni@vm-ubuntu:~$ sudo mount /dev/cdrom /mnt/cdrom
mount: block device /dev/sr0 is write-protected, mounting read-only

toni@vm-ubuntu:~$ ls /mnt/cdrom
manifest.txt  run_upgrader.sh  VMwareTools-9.9.0-2304977.tar.gz  vmware-tools-upgrader-32  vmware-tools-upgrader-64

toni@vm-ubuntu:~$ tar -xzvf /mnt/cdrom/VMwareTools-9.9.0-2304977.tar.gz -C /tmp/
vmware-tools-distrib/
vmware-tools-distrib/FILES
vmware-tools-distrib/doc/
vmware-tools-distrib/doc/open_source_licenses.txt
vmware-tools-distrib/doc/INSTALL
vmware-tools-distrib/doc/README
vmware-tools-distrib/installer/
vmware-tools-distrib/installer/services.sh
vmware-tools-distrib/installer/guestproxy-ssl.conf
vmware-tools-distrib/installer/thinprint.sh
vmware-tools-distrib/installer/upstart-job.conf
vmware-tools-distrib/installer/thinprint.conf
…
vmware-tools-distrib/bin/vmware-guestproxycerttool.pl
vmware-tools-distrib/vmware-install.pl

toni@vm-ubuntu:~$ cd /tmp/vmware-tools-distrib/

toni@vm-ubuntu:/tmp/vmware-tools-distrib$ ll
total 492
drwxr-xr-x  7 toni toni   4096 Nov 20 22:49 ./
drwxrwxrwt  8 root root   4096 Feb 16 15:34 ../
drwxr-xr-x  2 toni toni   4096 Nov 20 22:49 bin/
drwxr-xr-x  2 toni toni   4096 Nov 20 22:49 doc/
drwxr-xr-x  5 toni toni   4096 Nov 20 22:49 etc/
-rw-r--r--  1 toni toni 270917 Nov 20 22:49 FILES
-rw-r--r--  1 toni toni   2538 Nov 20 22:49 INSTALL
drwxr-xr-x  2 toni toni   4096 Nov 20 22:49 installer/
drwxr-xr-x 15 toni toni   4096 Nov 20 22:49 lib/
-rwxr-xr-x  1 toni toni 196237 Nov 20 22:49 vmware-install.pl*

toni@vm-ubuntu:/tmp/vmware-tools-distrib$ ./vmware-install.pl
Please re-run this program as the super user.

toni@vm-ubuntu:/tmp/vmware-tools-distrib$ sudo -s

Starting VMware Tools Installation: 

root@vm-ubuntu:/tmp/vmware-tools-distrib# ./vmware-install.pl
A previous installation of VMware Tools has been detected.

The previous installation was made by the tar installer (version 4).

Keeping the tar4 installer database format.

You have a version of VMware Tools installed.  Continuing this install will 
first uninstall the currently installed version.  Do you wish to continue? 
(yes/no) [yes] 

Uninstalling the tar installation of VMware Tools.

Stopping services for vmware-tools

vmware-tools stop/waiting
Stopping services for vmware-tools-thinprint

vmware-tools-thinprint stop/waiting
File /etc/pulse/default.pa is backed up to /etc/pulse/default.pa.old.9.

update-initramfs: Generating /boot/initrd.img-3.13.0-46-generic
update-initramfs: Generating /boot/initrd.img-3.13.0-45-generic
…
update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
The removal of VMware Tools 9.9.0 build-2304977 for Linux completed 
successfully.

Installing VMware Tools.

In which directory do you want to install the binary files? 
[/usr/bin] 

What is the directory that contains the init directories (rc0.d/ to rc6.d/)? 
[/etc] 

What is the directory that contains the init scripts? 
[/etc/init.d] 

In which directory do you want to install the daemon files? 
[/usr/sbin] 

In which directory do you want to install the library files? 
[/usr/lib/vmware-tools] 

The path "/usr/lib/vmware-tools" does not exist currently. This program is 
going to create it, including needed parent directories. Is this what you want?
[yes] 

In which directory do you want to install the documentation files? 
[/usr/share/doc/vmware-tools] 

The path "/usr/share/doc/vmware-tools" does not exist currently. This program 
is going to create it, including needed parent directories. Is this what you 
want? [yes] 

The installation of VMware Tools 9.9.0 build-2304977 for Linux completed 
successfully. You can decide to remove this software from your system at any 
time by invoking the following command: "/usr/bin/vmware-uninstall-tools.pl".

Before running VMware Tools for the first time, you need to configure it by 
invoking the following command: "/usr/bin/vmware-config-tools.pl". Do you want 
this program to invoke the command for you now? [yes] 

Initializing...

Making sure services for VMware Tools are stopped.

The module vmci has already been installed on this system by another installer 
or package and will not be modified by this installer.

The module vsock has already been installed on this system by another installer
or package and will not be modified by this installer.

The module vmxnet3 has already been installed on this system by another 
installer or package and will not be modified by this installer.

The module pvscsi has already been installed on this system by another 
installer or package and will not be modified by this installer.

The module vmmemctl has already been installed on this system by another 
installer or package and will not be modified by this installer.

The VMware Host-Guest Filesystem allows for shared folders between the host OS 
and the guest OS in a Fusion or Workstation virtual environment.  Do you wish 
to enable this feature? [yes] 

Before you can compile modules, you need to have the following installed... 

make
gcc
kernel headers of the running kernel

Searching for GCC...
Detected GCC binary at "/usr/bin/gcc".
The path "/usr/bin/gcc" appears to be a valid path to the gcc binary.
Would you like to change it? [no] 

Searching for a valid kernel header path...
Detected the kernel headers at "/lib/modules/3.13.0-46-generic/build/include".
The path "/lib/modules/3.13.0-46-generic/build/include" appears to be a valid 
path to the 3.13.0-46-generic kernel headers.
Would you like to change it? [no] 

Using kernel build system.
make: Entering directory `/tmp/modconfig-ShMrRp/vmhgfs-only'
/usr/bin/make -C /lib/modules/3.13.0-46-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
	  MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-46-generic'
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/backdoor.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/backdoorGcc64.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/bdhandler.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/cpName.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/cpNameLinux.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/cpNameLite.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/dentry.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/dir.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/file.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/filesystem.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/fsutil.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/hgfsBd.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/hgfsEscape.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/hgfsUtil.o
  CC [M]  /tmp/modconfig-ShMrRp/vmhgfs-only/inode.o
In file included from /usr/src/linux-headers-3.13.0-46-generic/arch/x86/include/asm/percpu.h:44:0,
                 from /usr/src/linux-headers-3.13.0-46-generic/arch/x86/include/asm/preempt.h:5,
                 from include/linux/preempt.h:18,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/mm.h:8,
                 from include/linux/pagemap.h:7,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:29:
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c: In function ‘HgfsPermission’:
include/linux/kernel.h:793:27: error: ‘struct dentry’ has no member named ‘d_alias’
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                           ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:708:13: note: in expansion of macro ‘hlist_entry_safe’
  for (pos = hlist_entry_safe((head)->first, typeof(*(pos)), member);\
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
include/linux/kernel.h:793:48: warning: initialization from incompatible pointer type [enabled by default]
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:708:13: note: in expansion of macro ‘hlist_entry_safe’
  for (pos = hlist_entry_safe((head)->first, typeof(*(pos)), member);\
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
In file included from include/linux/compiler-gcc.h:106:0,
                 from include/linux/compiler.h:54,
                 from include/uapi/linux/stddef.h:1,
                 from include/linux/stddef.h:4,
                 from /usr/src/linux-headers-3.13.0-46-generic/include/uapi/linux/posix_types.h:4,
                 from include/uapi/linux/types.h:13,
                 from include/linux/types.h:5,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/./shared/driver-config.h:71,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:26:
include/linux/compiler-gcc4.h:14:34: error: ‘struct dentry’ has no member named ‘d_alias’
 #define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
                                  ^
include/linux/stddef.h:17:31: note: in expansion of macro ‘__compiler_offsetof’
 #define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)
                               ^
include/linux/kernel.h:794:29: note: in expansion of macro ‘offsetof’
  (type *)( (char *)__mptr - offsetof(type,member) );})
                             ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:708:13: note: in expansion of macro ‘hlist_entry_safe’
  for (pos = hlist_entry_safe((head)->first, typeof(*(pos)), member);\
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
In file included from include/linux/preempt.h:10:0,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/mm.h:8,
                 from include/linux/pagemap.h:7,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:29:
include/linux/list.h:710:35: error: ‘struct dentry’ has no member named ‘d_alias’
       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
                                   ^
include/linux/list.h:697:12: note: in definition of macro ‘hlist_entry_safe’
  ({ typeof(ptr) ____ptr = (ptr); \
            ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
include/linux/list.h:710:35: error: ‘struct dentry’ has no member named ‘d_alias’
       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
                                   ^
include/linux/list.h:697:28: note: in definition of macro ‘hlist_entry_safe’
  ({ typeof(ptr) ____ptr = (ptr); \
                            ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
In file included from /usr/src/linux-headers-3.13.0-46-generic/arch/x86/include/asm/percpu.h:44:0,
                 from /usr/src/linux-headers-3.13.0-46-generic/arch/x86/include/asm/preempt.h:5,
                 from include/linux/preempt.h:18,
                 from include/linux/spinlock.h:50,
                 from include/linux/mmzone.h:7,
                 from include/linux/gfp.h:4,
                 from include/linux/mm.h:8,
                 from include/linux/pagemap.h:7,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:29:
include/linux/kernel.h:793:27: error: ‘struct dentry’ has no member named ‘d_alias’
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                           ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:710:13: note: in expansion of macro ‘hlist_entry_safe’
       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
include/linux/kernel.h:793:48: warning: initialization makes pointer from integer without a cast [enabled by default]
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:710:13: note: in expansion of macro ‘hlist_entry_safe’
       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
In file included from include/linux/compiler-gcc.h:106:0,
                 from include/linux/compiler.h:54,
                 from include/uapi/linux/stddef.h:1,
                 from include/linux/stddef.h:4,
                 from /usr/src/linux-headers-3.13.0-46-generic/include/uapi/linux/posix_types.h:4,
                 from include/uapi/linux/types.h:13,
                 from include/linux/types.h:5,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/./shared/driver-config.h:71,
                 from /tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:26:
include/linux/compiler-gcc4.h:14:34: error: ‘struct dentry’ has no member named ‘d_alias’
 #define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
                                  ^
include/linux/stddef.h:17:31: note: in expansion of macro ‘__compiler_offsetof’
 #define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)
                               ^
include/linux/kernel.h:794:29: note: in expansion of macro ‘offsetof’
  (type *)( (char *)__mptr - offsetof(type,member) );})
                             ^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
 #define hlist_entry(ptr, type, member) container_of(ptr,type,member)
                                        ^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
               ^
include/linux/list.h:710:13: note: in expansion of macro ‘hlist_entry_safe’
       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
             ^
/tmp/modconfig-ShMrRp/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
       hlist_for_each_entry(dentry,
       ^
make[2]: *** [/tmp/modconfig-ShMrRp/vmhgfs-only/inode.o] Error 1
make[1]: *** [_module_/tmp/modconfig-ShMrRp/vmhgfs-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-46-generic'
make: *** [vmhgfs.ko] Error 2
make: Leaving directory `/tmp/modconfig-ShMrRp/vmhgfs-only'

The filesystem driver (vmhgfs module) is used only for the shared folder 
feature. The rest of the software provided by VMware Tools is designed to work 
independently of this feature.

If you wish to have the shared folders feature, you can install the driver by 
running vmware-config-tools.pl again after making sure that gcc, binutils, make
and the kernel sources for your running kernel are installed on your machine. 
These packages are available on your distribution's installation CD.
[ Press Enter key to continue ] 

The vmxnet driver is no longer supported on kernels 3.3 and greater. Please 
upgrade to a newer virtual NIC. (e.g., vmxnet3 or e1000e)

The vmblock enables dragging or copying files between host and guest in a 
Fusion or Workstation virtual environment.  Do you wish to enable this feature?
[yes] 

VMware automatic kernel modules enables automatic building and installation of
VMware kernel modules at boot that are not already present. This feature can be

enabled/disabled by re-running vmware-config-tools.pl.

Would you like to enable VMware automatic kernel modules?
[yes] 

Thinprint provides driver-free printing. Do you wish to enable this feature? 
[yes] 

Disabling timer-based audio scheduling in pulseaudio.

Do you want to enable Guest Authentication (vgauth)? [yes] 

Detected X server version 1.15.1

Distribution provided drivers for Xorg X server are used.

Skipping X configuration because X drivers are not included.

Creating a new initrd boot image for the kernel.
update-initramfs: Generating /boot/initrd.img-3.13.0-46-generic
vmware-tools start/running
vmware-tools-thinprint start/running
The configuration of VMware Tools 9.9.0 build-2304977 for Linux for this 
running kernel completed successfully.

You must restart your X session before any mouse or graphics changes take 
effect.

You can now run VMware Tools by invoking "/usr/bin/vmware-toolbox-cmd" from the
command line.

To enable advanced X features (e.g., guest resolution fit, drag and drop, and 
file and text copy/paste), you will need to do one (or more) of the following:
1. Manually start /usr/bin/vmware-user
2. Log out and log back into your desktop session; and,
3. Restart your X session.

Enjoy,

--the VMware team

root@vm-ubuntu:/tmp/vmware-tools-distrib#