Created
July 6, 2012 03:26
-
-
Save mharsch/3057893 to your computer and use it in GitHub Desktop.
notes on getting gdev to build on Ubuntu 11.04
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I describe here a ground-up set of steps to get shinpei0208/gdev to compile and load on | |
Ubuntu 11.04 with a GeForce GTX 550 Ti (NVC0) card. | |
1.) Install Ubuntu 11.04 Server. Run apt-get upgrade and apt-get dist-upgrade | |
(ending up running kernel 2.6.38-15-server) | |
2.) Download the mainline kernel source using the procedure described here | |
(stop after step 3): https://wiki.ubuntu.com/KernelTeam/GitKernelBuild | |
3.) Checkout the v3.3 version of the kernel source tree: | |
linux$ git checkout -f v3.3 | |
4.) Proceed with kernel build procedure. Run 'make localmodconfig' prior to step 6 | |
to cull unused modules. | |
5.) In menuconfig, make sure DRM is enabled under Device Drivers -> Graphics Support. | |
Also, make sure that Nouveau is set to build as a module | |
(under Device Drivers -> Staging Drivers). | |
6.) Proceed with the kernel build steps. Install the built packages. | |
Step 12 is redundant. | |
7.) Boot the newly built 3.3 kernel. | |
7a.) If you want to run pscnv instead of patching nouveau, add blacklist entries for | |
'nouveau' and 'ttm' in /etc/modprobe.d/blacklist.conf to prevent nouveau from | |
loading at boot time. | |
8.) Install the CUDA toolkit from Nvidia (this gives you the nvcc compiler | |
- not the proprietary driver). | |
9.) Pull down gdev: | |
$ git clone git://github.com/shinpei0208/gdev.git | |
10.) Pull down envytools: | |
$ git clone git://github.com/pathscale/envytools.git | |
11.) Install envytools deps: | |
$ sudo apt-get install cmake libxml2 libxml2-dev libpciaccess-dev flex bison pkg-config | |
12.) Install envytools per directions in gdev Readme.md | |
From this point on, the instructions in the gdev Readme will mostly work. | |
A few remaining issues with the build system that require some tweaking are mentioned below. | |
I have yet to get the pscnv driver to work. I'm able to compile it, but it fails at | |
load time: | |
http://pastebin.com/raw.php?i=yVGPfTgf | |
Until I get past the pscnv issue, the only driver I've been able to get to work is the | |
nouveau driver from the kernel v3.3 source tree (patched with gdev-nouveau.patch from | |
gdev/mod/patches). | |
Gdev Module: must copy gdev_interface.h to build directory for build to succeed. | |
Cuda Driver API (kcuda): - need to add '-I /usr/include' to Makefile EXTRA_CLFAGS | |
(after running cmake to generate the Makefile) | |
<edit> | |
actually, the file that wants to include sys/errno.h above can be compiled in either kernel or user context. I've patched the file in question to properly include the right file. | |
I am getting a "PGRAPH: unsupported chipset" dmesg error on startup. I have a GTX 570 card. Maybe the DRM module doesn't have the information needed. Shall i continue with my setup or should i switch to a newer distribution?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The pscnv driver issue described above was fixed in pscnv with this commit:
https://github.com/pathscale/pscnv/commit/f669f81d5518ed3ec8fb8394e2c16eb0d84168ea.patch
Applying this patch allows my NVCF (GF116) card to work (specifically GeForce GTX 550 Ti).