How to setup fglrx 8.42.3 and compiz for Ubuntu Gutsy

After long waiting, fglrx 8.42.3 with AIGLX is here (Phoronix, Blognone). And now my laptop is Ubuntu Gutsy so my old instruction is obsoleted already. I note what I have done here in this post for further references.

Actually, my instructions are based on the howto I wrote earlier for Ubuntu Feisty. Please read it for more detail.

  1. Enable Composite extension by adding below lines in /etc/X11/xorg.conf. Yeah!

    Section "Extensions"
        Option  "Composite" "Enable" 
    EndSection
  2. Install necessary tools.

    sudo apt-get update
    sudo apt-get install module-assistant build-essential fakeroot dh-make debhelper debconf libstdc++5
    sudo apt-get install linux-headers-$(uname -r) wget
  3. Download ATI driver.

    mkdir -p ~/fglrx
    cd ~/fglrx
    wget https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-8.42.3-x86.x86_64.run
  4. Create .deb packages.

    sh ./ati-driver-installer-8.42.3-x86.x86_64.run --buildpkg Ubuntu/7.10
  5. Install the .deb packages.

    sudo dpkg -i xorg-driver-fglrx*.deb
    sudo dpkg -i fglrx-kernel-source*.deb
    sudo dpkg -i fglrx-amdcccle*.deb
  6. Compile and install fglrx module.

    sudo module-assistant prepare
    sudo module-assistant update
    sudo module-assistant build -f fglrx
    sudo module-assistant install fglrx
  7. Disable fglrx bundled with linux-restricted-module by adding fglrx to /etc/default/linux-restricted-modules-common.

    DISABLED_MODULES="fglrx"
  8. Regenerate module dependencies.

    sudo depmod -a
  9. Modify /etc/X11/xorg.conf to use fglrx instead. You may safely use my configuration as follows.

    Section "ServerLayout"
        Identifier     "Default Layout"
        Screen         "Default Screen" 0 0
        InputDevice    "Generic Keyboard"
        InputDevice    "Configured Mouse"
        InputDevice    "stylus" "SendCoreEvents"
        InputDevice    "cursor" "SendCoreEvents"
        InputDevice    "eraser" "SendCoreEvents"
        InputDevice    "Synaptics Touchpad"
    EndSection
    Section "Files"
        FontPath     "/usr/share/fonts/X11/misc"
        FontPath     "/usr/share/fonts/X11/cyrillic"
        FontPath     "/usr/share/fonts/X11/100dpi/:unscaled"
        FontPath     "/usr/share/fonts/X11/75dpi/:unscaled"
        FontPath     "/usr/share/fonts/X11/Type1"
        FontPath     "/usr/share/fonts/X11/100dpi"
        FontPath     "/usr/share/fonts/X11/75dpi"
        FontPath     "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
    EndSection
    Section "Module"
        Load  "bitmap"
        Load  "dbe"
        Load  "ddc"
        Load  "dri"
        Load  "extmod"
        Load  "freetype"
        Load  "glx"
        Load  "int10"
        Load  "type1"
        Load  "vbe"
    EndSection
    Section "InputDevice"
        Identifier  "Generic Keyboard"
        Driver      "kbd"
        Option      "CoreKeyboard"
        Option      "XkbRules" "xorg"
        Option      "XkbModel" "pc104"
        Option      "XkbLayout" "us"
    EndSection
    Section "InputDevice"
        Identifier  "Configured Mouse"
        Driver      "mouse"
        Option      "CorePointer"
        Option      "Device" "/dev/input/mice"
        Option      "Protocol" "ExplorerPS/2"
        Option      "ZAxisMapping" "4 5"
        Option      "Emulate3Buttons" "true"
    EndSection
    Section "InputDevice"
        Identifier  "Synaptics Touchpad"
        Driver      "synaptics"
        Option      "SendCoreEvents" "true"
        Option      "Device" "/dev/psaux"
        Option      "Protocol" "auto-dev"
        Option      "HorizScrollDelta" "0"
    EndSection
    Section "InputDevice"
        Identifier  "stylus"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"       # Change to 
        Option      "Type" "stylus"
        Option      "ForceDevice" "ISDV4"               # Tablet PC ONLY
    EndSection
    Section "InputDevice"
        Identifier  "eraser"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"       # Change to 
        Option      "Type" "eraser"
        Option      "ForceDevice" "ISDV4"               # Tablet PC ONLY
    EndSection
    Section "InputDevice"
        Identifier  "cursor"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"       # Change to 
        Option      "Type" "cursor"
        Option      "ForceDevice" "ISDV4"               # Tablet PC ONLY
    EndSection
    Section "Monitor"
        Identifier   "Builtin LCD"
        HorizSync    28.0 - 70.0
        VertRefresh  43.0 - 60.0
        Option      "DPMS"
    EndSection
    Section "Device"
        Identifier  "ATI Technologies Inc M22 [Radeon Mobility M300]"
        Driver      "fglrx"
        Option      "VideoOverlay" "on"
        Option      "OpenGLOverlay" "off"
        BusID       "PCI:1:0:0"
    EndSection
    Section "Screen"
        Identifier "Default Screen"
        Device     "ATI Technologies Inc M22 [Radeon Mobility M300]"
        Monitor    "Builtin LCD"
        DefaultDepth     24
        SubSection "Display"
                Depth     1
                Modes    "1400x1050"
        EndSubSection
        SubSection "Display"
                Depth     4
                Modes    "1400x1050"
        EndSubSection
        SubSection "Display"
                Depth     8
                Modes    "1400x1050"
        EndSubSection
        SubSection "Display"
                Depth     15
                Modes    "1400x1050"
        EndSubSection
        SubSection "Display"
                Depth     16
                Modes    "1400x1050"
        EndSubSection
        SubSection "Display"
                Depth     24
                Modes    "1400x1050"
        EndSubSection
    EndSection
    Section "DRI"
        Mode         0666
    EndSection
    Section "Extensions"
        Option      "Composite" "Enable"
    EndSection
  10. Optionally, add fglrx to /etc/modules. Note that you should not need to do it but give it a try if fglrx is not loaded automatically.

    lp
    psmouse
    sbp2
    sr_mod
    rtc
    fuse
    fglrx
  11. Add fglrx to whitelist of compiz by adding below line to /etc/xdg/compiz/compiz-manager.

    WHITELIST="$WHITELIST fglrx"
  12. Reboot your computer.

  13. Verify that everything goes well by running glxinfo and you should obtain something like below.

    $ glxinfo |grep OpenGL
    OpenGL vendor string: ATI Technologies Inc.
    OpenGL renderer string: ATI MOBILITY RADEON X300
    OpenGL version string: 2.0.6958 Release
    OpenGL extensions:
  14. Now you may enable Desktop Effects in System / Preferences / Appearance / Visual Effects and choose Normal mode. Don't worry. You will be asked to keep settings or revert.

All done! If you have any problems, please consult /var/log/Xorg.0.log.

Tags: , , , , ,

all good except it doesn't work for me

Hi. First of all, thanks for the great tips. I just upgraded to gutsy from feisty, where I had compiz working. When I upgraded it stopped working and I started searching and found this post. Now, I took all the steps you said, installed fglrx, etc, etc, but in the end, when I try glxinfo, it just says "glxinfo: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory" and dies. I tried installing fglrx from the gutsy repos, glxinfo works but it then says I have the mesa drivers running. I even tried copying libGL.so.1 from the repos install and paste it when I installed it your way, but it just segfaults. How can I get this to work?

I tried, but failed here

After the step 12 Reboot. >glxinfo glxinfo: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory What had I done wrong? How can I rebuild the glx? Thanks in advance.

When that happens to me, I

When that happens to me, I just uninstall xorg-driver-fglrx with apt-get and install it again. That gets glxinfo working again and stuff.. But it still doesn't let me have compiz running :(

for anyone that has gotten

for anyone that has gotten the fglrxinfo: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory error or whatever.... try: sudo ln -s /usr/lib/libGL.so.1.2 /usr/lib/libGL.so.1 worked perfectly for me!

All compiled but X server quit after login

Hi, I had everything compiled and fglrx is running when I check the Xorg.0.log The login screen appears in gdm, but after I login, the screen turn a solid color. The mouse cursor moves, but nothing shows up. Then the session dies and restarted again. The configuration should be working when gdm is showing in graphics mode, isn't it? The strange thing is that when I change the DRIVER back to "vesa" than login works. Thanks in advance.

Post new comment