Phoronix Forums  

Go Back   Phoronix Forums > Linux Graphics / X.Org Drivers > AMD/ATI Linux

AMD/ATI Linux Technical support and discussion of the ATI/AMD proprietary Linux driver.

Reply
 
Thread Tools Display Modes
  #1  
Old 11-01-2006, 07:26 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default ATI driver 8.30.3 Installation trouble on FC6

Hello,

I just join this forum which is very cool and helfull. Thanks to everyone for this.
However, i just updrage for FC5 to FC6 on my laptop (Dell Latitude D610) with ATI Radeon X300 and i have some trouble making ATI driver works.

I try both 8.30.3 and 8.29.6 without any success => still have a fireglcontrolpanel error.

Here is the (part1) ouput of:
# ./ati-driver-installer-8.30.3.run --buildpkg Fedora/FC6
Creating directory fglrx-install
Verifying archive integrity... All good.
Uncompressing ATI Proprietary Linux Driver-8.30.3............................................ .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. ..........................................
==================================================
ATI Technologies Linux Driver Installer/Packager
==================================================
Generating package: Fedora/FC6
install: cannot stat `fireglcontrolpanel': No such file or directory
Package build failed!
Package build utility output:
Building target platforms: i386
Building for target i386
Executing(%prep): /bin/sh -e /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/rpm-tmp.81355
+ umask 022
+ cd /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD
+ LANG=C
+ export LANG
+ unset DISPLAY
+ cd /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD
+ cd ATI-fglrx-8.30.3
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chown -Rhf root .
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chgrp -Rhf root .
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/rpm-tmp.81355
+ umask 022
+ cd /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD
+ cd ATI-fglrx-8.30.3
+ LANG=C
+ export LANG
+ unset DISPLAY
+ exit 0
Executing(%install): /bin/sh -e /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/rpm-tmp.81355
+ umask 022
+ cd /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD
+ cd ATI-fglrx-8.30.3
+ LANG=C
+ export LANG
+ unset DISPLAY
+ rm -rf /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root
+ '[' -d /etc/ld.so.conf.d ']'
+ mkdir -p /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/etc/ld.so.conf.d
+ pushd /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/etc/ld.so.conf.d
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/etc/ld.so.conf.d /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ cat
+ popd
/tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ mkdir -p /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/share/applications
+ pushd /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/share/applications
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/share/applications /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ cat
+ popd
/tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ cp -pR /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3/etc /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3/lib /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3/usr /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root
+ find /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/share/doc -type f -perm 0555 -exec chmod 0644 '{}' ';'
+ find /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root -type f -perm 0555 -exec chmod 0755 '{}' ';'
+ export AS_USER=y
+ AS_USER=y
+ pushd /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ bash make.sh verbose
ATI module generator V 2.0
==========================
initializing...
cat: /lib/modules/2.6.18-1.2798.fc6/build/include/linux/version-*.h: No such file or directory
OsRelease=2.6.18-1.2798.fc6
major=2
minor=6
patch=18
extra=-1.2798.fc6
SMP=1
smp=-SMP
iii=
AGP=1
CC=gcc
cc_version=
cleaning...
patching 'highmem.h'...
assuming new VMA API since we do have kernel 2.6.x...
Assuming default VMAP API
doing Makefile based build for kernel 2.6.x and higher
make -C /lib/modules/2.6.18-1.2798.fc6/build SUBDIRS=/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-1.2798.fc6-i686'
CC [M] /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:460: warning: initialization from incompatible pointer type
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function 'firegl_stub_open':
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:583: warning: assignment discards qualifiers from pointer target type
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function '__ke_smp_call_function':
/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3902: warning: passing argument 1 of 'smp_call_function' from incompatible pointer type
LD [M] /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/fglrx.o
Building modules, stage 2.
MODPOST
WARNING: could not find /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/.libfglrx_ip.a.GCC4.cmd for /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/libfglrx_ip.a.GCC4
CC /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
LD [M] /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.18-1.2798.fc6-i686'
build succeeded with return value 0
duplicating results into driver repository...
done.
==============================
You must change your working directory to /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx
and then call ./make_install.sh in order to install the built module.
==============================
+ mkdir -p /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/2.6.18-1.2798.fc6/extra
+ install -D -m 0644 fglrx.ko /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/2.6.18-1.2798.fc6/extra/fglrx/fglrx.ko
+ rm -rf /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/lib/modules/fglrx
+ popd
/tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
+ /usr/lib/rpm/find-debuginfo.sh /tmp/ATI-fglrx-8.30.3-1-20289-root/BUILD/ATI-fglrx-8.30.3
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/dri/atiogl_a_dri.so
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/dri/fglrx_dri.so
extracting debug info from


... i will post part II just below
Reply With Quote
  #2  
Old 11-01-2006, 07:28 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default Part II

Hi again,

Here is the part II of the oupout

/tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/fglrx/libfglrx_gamma.so.1.0
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/fglrx/libfglrx_pp.so.1.0
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/fglrx/libfglrx_tvout.so.1.0
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/fglrx/libGL.so.1.2
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/fglrx/libfglrx_dm.so.1.0
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/xorg/modules/linux/libfglrxdrm.so
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/lib/xorg/modules/drivers/fglrx_drv.so
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/sbin/atieventsd
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/fgl_glxgears
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/aticonfig
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/fglrxinfo
extracting debug info from /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/fglrx_xgamma
0 blocks
+ /usr/lib/rpm/redhat/brp-compress
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump
+ /usr/lib/rpm/brp-python-bytecompile
+ /usr/lib/rpm/redhat/brp-java-repack-jars
Processing files: ATI-fglrx-8.30.3-1.fc6
Provides: atiogl_a_dri.so config(ATI-fglrx) = 8.30.3-1.fc6 fglrx_dri.so fglrx_drv.so libGL.so.1 libfglrx_dm.so.1.0 libfglrx_gamma.so.1 libfglrx_pp.so.1.0 libfglrx_tvout.so.1 libfglrxdrm.so
Requires(interp): /bin/sh /bin/sh /bin/sh
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires(post): /bin/sh /sbin/chkconfig /sbin/ldconfig
Requires(preun): /bin/sh /sbin/chkconfig /sbin/service
Requires(postun): /bin/sh /sbin/ldconfig /sbin/service
Requires: /bin/bash /bin/sh config(ATI-fglrx) = 8.30.3-1.fc6 kernel-module-ATI-fglrx-2.6.18-1.2798.fc6 = 8.30.3-1.fc6 libGL.so.1 libX11.so.6 libXext.so.6 libXrandr.so.2 libXrender.so.1 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.2.3) libdl.so.2 libdl.so.2(GLIBC_2.0) libdl.so.2(GLIBC_2.1) libfglrx_dm.so.1.0 libfglrx_gamma.so.1 libfglrx_pp.so.1.0 libfglrx_tvout.so.1 libgcc_s.so.1 libgcc_s.so.1(GCC_3.0) libgcc_s.so.1(GLIBC_2.0) libm.so.6 libm.so.6(GLIBC_2.0) libm.so.6(GLIBC_2.1) libpthread.so.0 libpthread.so.0(GLIBC_2.0) librt.so.1 librt.so.1(GLIBC_2.2) libstdc++.so.5 libstdc++.so.5(CXXABI_1.2) libstdc++.so.5(GLIBCPP_3.2) system-config-display
Conflicts: fglrx fglrx-glc22 fglrx_4_3_0 fglrx_6_8_0 kernel-module-fglrx ati-fglrx ati-fglrx-devel kmod-fglrx xorg-x11-drv-fglrx xorg-x11-drv-fglrx-devel nvidia-glx nvidia-glx-legacy xorg-x11-drv-nvidia xorg-x11-drv-nvidia-legacy
Processing files: ATI-fglrx-control-panel-8.30.3-1.fc6
error: File not found: /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/fireglcontrolpanel
Processing files: ATI-fglrx-devel-8.30.3-1.fc6
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: /usr/include/GL ATI-fglrx = 8.30.3-1.fc6 libGL.so.1
Processing files: kernel-module-ATI-fglrx-2.6.18-1.2798.fc6-8.30.3-1.fc6
Requires(interp): /bin/sh /bin/sh
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires(post): /bin/sh
Requires(postun): /bin/sh
Processing files: ATI-fglrx-debuginfo-8.30.3-1.fc6
Provides: atiogl_a_dri.so.debug fglrx_dri.so.debug fglrx_drv.so.debug libGL.so.1.2.debug libfglrx_dm.so.1.0.debug libfglrx_gamma.so.1.0.debug libfglrx_pp.so.1.0.debug libfglrx_tvout.so.1.0.debug libfglrxdrm.so.debug
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1


RPM build errors:
File not found: /tmp/ATI-fglrx-8.30.3-1-20289-root/tmp/ATI-fglrx-8.30.3-1.fc6-root-root/usr/bin/fireglcontrolpanel
Removing temporary directory: fglrx-install


Here is the output of some installed rpm:
# rpm -qa | grep kernel
kernel-devel-2.6.18-1.2798.fc6
yum-kernel-module-1.0-2.fc6
kernel-headers-2.6.18-1.2798.fc6
kernel-2.6.18-1.2798.fc6

# rpm -qa | grep qt
avahi-qt3-0.6.11-6.fc6
qt-devel-3.3.7-0.1.fc6
qt-3.3.7-0.1.fc6

Any ideas ?
Thanks in advance for any help

Sherl
Reply With Quote
  #3  
Old 11-01-2006, 08:29 AM
Michael Michael is offline
Phoronix
 
Join Date: Jun 2006
Location: United States
Posts: 4,562
Default

See: http://www.phoronix.net/forums/showt...t=318#post1860

Following that should fix your problem.
Reply With Quote
  #4  
Old 11-01-2006, 08:40 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default

Thanks for your answer Mikeal,
I've tried to link /usr/lib64 to /usr/lib
and same for /usr/lib/qt-3-3/lib64 to /usr/lib/qt3-3/lib

$ ls -ld /usr/lib*
drwxr-xr-x 128 root root 106496 Nov 1 13:07 /usr/lib
lrwxrwxrwx 1 root root 8 Nov 1 13:59 /usr/lib64 -> /usr/lib

$ ls -ld /usr/lib/qt-3.3/lib*
drwxr-xr-x 2 root root 4096 Oct 30 04:04 /usr/lib/qt-3.3/lib
lrwxrwxrwx 1 root root 5 Nov 1 14:35 /usr/lib/qt-3.3/lib64 -> ./lib

But it doesnt fix my problem.
Do i forget something ?

Sh
Reply With Quote
  #5  
Old 11-01-2006, 08:47 AM
Michael Michael is offline
Phoronix
 
Join Date: Jun 2006
Location: United States
Posts: 4,562
Default

Just making sure, but you do have qt-devel 3.3 installed?
Reply With Quote
  #6  
Old 11-01-2006, 08:57 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default

On my distrib, making link /usr/lib64 and /usr/lib/qt3-3/lib64 are not mandatory.
I remove both links (i just created before) /usr/lib64 and /usr/lib/qt3-3/lib64

And after reading the whole thread you mentioned, i found that i need to create linkslibXxf86vm.so and libXmu.so

# cd /usr/lib
# ln -s libXxf86vm.so.1 libXxf86vm.so
# ln -s libXmu.so.6 libXmu.so

And it solves my problem

./ati-driver-installer-8.30.3.run --buildpkg Fedora/FC6
Creating directory fglrx-install
Verifying archive integrity... All good.
Uncompressing ATI Proprietary Linux Driver-8.30.3............................................ .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. .................................................. ..........................................
==================================================
ATI Technologies Linux Driver Installer/Packager
==================================================
Generating package: Fedora/FC6
Package /home/brothier/tmp/ATI-fglrx-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/ATI-fglrx-control-panel-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/ATI-fglrx-devel-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/kernel-module-ATI-fglrx-2.6.18-1.2798.fc6-8.30.3-1.fc6.i386.rpm has been successfully generated
Removing temporary directory: fglrx-install

Thanks for your help (i'll now try to install those packages)

Sh
Reply With Quote
  #7  
Old 11-01-2006, 09:04 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default kernel module dependencies...

Now that i succeed to build the ATI RPM files, i've got another problem...
# rpm -ivh ATI-fglrx-8.30.3-1.fc6.i386.rpm ATI-fglrx-control-panel-8.30.3-1.fc6.i386.rpm ATI-fglrx-devel-8.30.3-1.fc6.i386.rpm
error: Failed dependencies:
kernel-module-ATI-fglrx-2.6.18-1.2798.fc6 = 8.30.3-1.fc6 is needed by ATI-fglrx-8.30.3-1.fc6.i386

But when i try to find this dependencie with yum, nothing matches...

Sh
Reply With Quote
  #8  
Old 11-01-2006, 09:08 AM
Michael Michael is offline
Phoronix
 
Join Date: Jun 2006
Location: United States
Posts: 4,562
Default

If you look at the output from your previous post....

Quote:
Package /home/brothier/tmp/ATI-fglrx-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/ATI-fglrx-control-panel-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/ATI-fglrx-devel-8.30.3-1.fc6.i386.rpm has been successfully generated
Package /home/brothier/tmp/kernel-module-ATI-fglrx-2.6.18-1.2798.fc6-8.30.3-1.fc6.i386.rpm has been successfully generated
You generated the kernel module... so install it
Reply With Quote
  #9  
Old 11-01-2006, 09:18 AM
sherl sherl is offline
Junior Member
 
Join Date: Nov 2006
Posts: 18
Default

Quote:
Originally Posted by Michael View Post
If you look at the output from your previous post....



You generated the kernel module... so install it
You were right!
Thanks and sorry

Sh
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 09:59 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Copyright ©2004 - 2009 by Phoronix Media.