</head>
<body>
+<div class="header">
+ <h1>The Mesa 3D Graphics Library</h1>
+</div>
+
+<iframe src="contents.html"></iframe>
+<div class="content">
+
<h1>VMware guest GL driver</h1>
<p>
This page describes how to build, install and use the
-<a href="http://www.vmware.com/" target="_parent">VMware</a> guest GL driver
+<a href="http://www.vmware.com/">VMware</a> guest GL driver
(aka the SVGA or SVGA3D driver) for Linux using the latest source code.
This driver gives a Linux virtual machine access to the host's GPU for
hardware-accelerated 3D.
</p>
<p>
-End users shouldn't have to go through all these steps once the driver is
-included in newer Linux distributions.
+Most modern Linux distros include the SVGA3D driver so end users shouldn't
+be concerned with this information.
+But if your distro lacks the driver or you want to update to the latest code
+these instructions explain what to do.
</p>
<p>
For more information about the X components see these wiki pages at x.org:
</p>
<ul>
-<li><a href="http://wiki.x.org/wiki/vmware" target="_parent">
+<li><a href="http://wiki.x.org/wiki/vmware">
Driver Overview</a>
-<li><a href="http://wiki.x.org/wiki/vmware/vmware3D" target="_parent">
+<li><a href="http://wiki.x.org/wiki/vmware/vmware3D">
xf86-video-vmware Details</a>
</ul>
<li>Mesa/gallium OpenGL driver: "svga"
</ul>
+<p>
+All of these components reside in the guest Linux virtual machine.
+On the host, all you're doing is running VMware
+<a href="http://www.vmware.com/products/workstation/">Workstation</a> or
+<a href="http://www.vmware.com/products/fusion/">Fusion</a>.
+</p>
+
<h2>Prerequisites</h2>
<pre>
git clone git://anongit.freedesktop.org/git/mesa/vmwgfx
</pre>
-
-<li>libdrm, A user-space library that interfaces with drm. Most distros ship with this driver. Safest bet is really to replace the system one. Optionally you can point LIBDRM_CFLAGS and LIBDRM_LIBS to the libdrm-2.4.22 package in toolchain. But here, we replace:
+<li>libdrm, a user-space library that interfaces with drm.
+Most distros ship with this but it's safest to install a newer version.
+To get the latest code from git:
<pre>
git clone git://anongit.freedesktop.org/git/mesa/drm
</pre>
<li>Build libdrm: If you're on a 32-bit system, you should skip the --libdir configure option. Note also the comment about toolchain libdrm above.
<pre>
cd $TOP/drm
- ./autogen.sh --prefix=/usr --enable-vmwgfx-experimental-api --libdir=/usr/lib64
+ ./autogen.sh --prefix=/usr --libdir=/usr/lib64
make
sudo make install
</pre>
configure option.
<pre>
cd $TOP/mesa
- ./autogen.sh --prefix=/usr --libdir=/usr/lib64 --with-gallium-drivers=svga --with-dri-drivers= --enable-xa
+ ./autogen.sh --prefix=/usr --libdir=/usr/lib64 --with-gallium-drivers=svga --with-dri-drivers= --enable-xa --disable-dri3
make
sudo make install
</pre>
sudo cp 00-vmwgfx.rules /etc/udev/rules.d
sudo depmod -ae
</pre>
+
+Note: some distros put DRM kernel drivers in different directories.
+For example, sometimes vmwgfx.ko might be found in
+<code>/lib/modules/{version}/extra/vmwgfx.ko</code> or in
+<code>/lib/modules/{version}/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko</code>.
+<p>
+After installing vmwgfx.ko you might want to run the following command to
+check that the new kernel module is in the expected place:
+<pre>
+ find /lib/modules -name vmwgfx.ko -exec ls -l '{}' \;
+</pre>
+If you see the kernel module listed in more than one place, you may need to
+move things around.
+<p>
+Finally, if you update your kernel you'll probably have to rebuild and
+reinstall the vmwgfx.ko module again.
</ul>
OpenGL version string: 2.1 Mesa 8.0
</pre>
+<p>
If you don't see this, try setting this environment variable:
<pre>
export LIBGL_DEBUG=verbose</pre>
+<p>
then rerun glxinfo and examine the output for error messages.
</p>
-
-
+</div>
</body>
</html>