Thursday, May 15, 2008

Fedora 9 and Nouveau Nvidia Driver

Given that the current nvidia driver does not support all the fancy features which are required to run a fully productive desktop, i've tried to see the current state of the nouveau

Fedora 9 currently does not ship the 'nouvea_dri.so' with its mesa rpms. In order to get the feel of the dri using nouveau, i've compiled the mesa drivers from sources.


Instructions follows

NOTE: Do not report any issues to Fedora Bugzilla or Nouveau Bugzilla when using the Gallium Drivers. These are completely experimental.

NOTE: Since the gallium 3d does not support all the Visuals (ARGBGLX) required to run compiz, compiz does not work.

0. Below are my Hardware Details

Smolt profile :: http://www.smolts.org/client/show/pub_af62c229-68e1-4b66-9171-b8be36c7a3fd



[nareshv@fallenAngel mesa]$ /sbin/lspci | grep -i nvidia
01:00.0 VGA compatible controller: nVidia Corporation G72M [GeForce Go 7400] (rev a1)



1. Get the mesa sources (50M sources) using git


cd /tmp
git clone git://anongit.freedesktop.org/git/nouveau/mesa



2. Switch to the gallium-0.1 branch



cd mesa/
git checkout origin/gallium-0.1
git checkout -b gallium-0.1



3. Configure the Library installation paths. (open and edit the file so that below 2 settings should be like this)


[nareshv@fallenAngel configs]$ pwd
/tmp/mesa/configs
[nareshv@fallenAngel configs]$ grep INSTALL_DIR default | grep -v SEARCH
INSTALL_DIR = /usr/
DRI_DRIVER_INSTALL_DIR = /usr/lib/dri/


4. Make sure you have all the Xorg development libraries installed.


[root@fallenAngel ~]# rpm -qa lib\*-devel
libacl-devel-2.2.47-1.fc9.i386
libXfixes-devel-4.0.3-3.fc9.i386
libSM-devel-1.0.2-5.fc9.i386
libattr-devel-2.4.41-1.fc9.i386
libogg-devel-1.1.3-9.fc9.i386
libuser-devel-0.56.9-1.i386
libXau-devel-1.0.3-5.fc9.i386
libXmu-devel-1.0.4-1.fc9.i386
libcap-devel-2.06-4.fc9.i386
libxml2-devel-2.6.32-1.fc9.i386
libxcb-devel-1.1-4.fc9.i386
libX11-devel-1.1.4-1.fc9.i386
libdrm-devel-2.4.0-0.11.fc9.i386
libXt-devel-1.0.4-5.fc9.i386
libsepol-devel-2.0.26-1.fc9.i386
libgdiplus-devel-1.9-4.fc9.i386
libcurl-devel-7.18.1-1.fc9.i386
libXdmcp-devel-1.0.2-5.fc9.i386
libXdamage-devel-1.1.1-4.fc9.i386
libXxf86vm-devel-1.0.1-5.fc9.i386
libselinux-devel-2.0.61-1.fc9.i386
libXext-devel-1.0.4-1.fc9.i386
libXi-devel-1.1.3-4.fc9.i386
libstdc++-devel-4.3.0-8.i386
libidn-devel-0.6.14-7.i386
libvorbis-devel-1.2.0-3.fc9.i386
libICE-devel-1.0.4-3.fc9.i386


5. Start building mesa for your OS (i386 or x86_64)


[nareshv@fallenAngel mesa]$ ls
bin configs doxygen Makefile SConstruct winddk.py
common.py docs include progs src
[nareshv@fallenAngel mesa]$ make DRI_DIRS=nouveau linux-dri-x86

(replace linux-dri-x86 with linux-dri-x86_64 if you are on 64bit Fedora)



8. Try running glxgears with the latest drivers that are built


bash$ LD_LIBRARY_PATH="/tmp/mesa/lib" LIBGL_DRIVERS_PATH="/tmp/mesa/lib" glxgears



9. Verify that the screen has direct rendering enabled


[nareshv@fallenAngel tmp]$ LD_LIBRARY_PATH="/tmp/mesa/lib" LIBGL_DRIVERS_PATH="/tmp/mesa/lib" glxinfo 2>/dev/null | grep ^OpenGL
OpenGL vendor string: Tungsten Graphics, Inc. and nouveau
OpenGL renderer string: Gallium 0.1, NV46 on Nouveau/DRI
OpenGL version string: 1.5 Mesa 7.1
OpenGL extensions:


9. Screenshot with Gallium3d on my desktop ( I am getting from 900fps to 1200fps !, while the nouveau driver without this gallium gives only 250fps [same with nv driver])




10. I dont have any games to test the FPS, but you can try running openarena and see things working


NOTE: Remember, this gallium 3d is completely experimental and may not work with all the nvidia chipsets and might even crash your X when running heavy 3d applications. DONT REPORT ANY ISSUES WITH NOUVEAU TEAM WHEN USING GALLIUM

Related Posts:

  • Fedora 9 and Thunderbird / Lightning problemHere goes the problem description,You've installed Fedora without any development stuff on your notebook/workstation, Using thunderbird as the official mail client, using lightning as your default calendar handler.If you are … Read More
  • Making Calendar work with Thunderbird and Outlook Many people who uses thunderbird want to exchange calendars with Windows Outlook.Here is the new plugin for the thunderbird.Lightning Project. This plugin allows you to manag… Read More
  • Fedora 9 and Latest Nvidia 173.08 Driver Nvidia has released its latest version of the xorg 1.5 compatible drivers. You no longer need to follow my techique for 173.08 version driver . See my new blog entry for details Nvidia has released its latest drivers for Lin… Read More
  • HP Pavilion Webcam on Fedora 9Folks at mediati are working hard to bring the r5u870 webcam work with the latest linux kernels, after the initial work done by Sam Revitch on this type of webcam.I've again built the rpm package to work with the Latest Fedor… Read More
  • blueman rpm for Fedora 8 yesterday i was searching for a good front end software which helps in using the bluetooth easy in the gnome desktop environment. after searching in yahoo, found the software http://www.gnomefiles.co… Read More

2 comments:

  1. I saw ur blog.. I liked it very much. I have few questions ... I recently bought HP Pavilion 9500t laptop. I want to install any linux version on it.. Would recommend me which version have most of the driver available for this laptop?

    ReplyDelete
  2. I have the same video card and when i try to compiled i got:


    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:940: error: ‘struct OptConfData’ has no member named ‘ignoringApp’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:941: error: ‘struct OptConfData’ has no member named ‘inDriConf’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:942: error: ‘struct OptConfData’ has no member named ‘inDevice’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:943: error: ‘struct OptConfData’ has no member named ‘inApp’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:944: error: ‘struct OptConfData’ has no member named ‘inOption’
    ../../../../../src/mesa/drivers/dri/common/xmlconfig.c:946: warning: implicit declaration of function ‘parseOneConfigFile’
    make[5]: *** [../../../../../src/mesa/drivers/dri/common/xmlconfig.o] Error 1
    make[5]: Leaving directory `/tmp/mesa/src/gallium/winsys/dri/nouveau'
    make[4]: *** [subdirs] Error 1
    make[4]: Leaving directory `/tmp/mesa/src/gallium/winsys/dri'
    make[3]: *** [subdirs] Error 1
    make[3]: Leaving directory `/tmp/mesa/src/gallium/winsys'
    make[2]: *** [subdirs] Error 1
    make[2]: Leaving directory `/tmp/mesa/src'
    make[1]: *** [default] Error 1
    make[1]: Leaving directory `/tmp/mesa'



    Do you know what is wrong?
    Salu2...

    ReplyDelete