Showing posts with label linux. Show all posts
Showing posts with label linux. Show all posts

Tuesday, March 09, 2010

nVidia and Slackware-Current

A week ago slackware-current got a huge update and one of the things that were updated was the kernel. Kernel 2.6.33 intr0duced a new nvidia driver: nouveau, which resulted by reverse-engineering the official driver I think. The problem is that out of the box, at least for now, neither nouveau, nor the official nvidia driver are runnable on the system.

For nouveau, the Xorg that is included with slackware-current does not contain the needed xf86-video-nouveau driver.
You can download and compile this, but you need to find the suitable for your nouveau kernel module and this is not the latest from the nouveau repository:

git://anongit.freedesktop.org/git/nouveau/xf86-video-nouveau/

You could of course download the latest pair of kernel and xorg driver and this should work, but for now, I decided to stay with the official driver from nvidia. Two problems arise here. First the nouveau driver is loaded automatically in the boot process when the hardware is probed and it is conflicting with the official nvidia driver. Second, the latest nvidia driver 190.53 does not compile with kernel 2.6.33.

In order to overcome the first problem you'll probably need to blacklist the nouveau module, or unload it every time before starting X-Window. You cannon directly unload nouveau and it's dependencies using rmmod. You have to unbind the nouveau frame buffer first. See here for more info.

Anyway, blacklisting the modules is easier. Simply append this:
blacklist drm
blacklist ttm
blacklist nouveau
to /etc/modprobe.d/blacklist.conf and the old vga console driver will run the next time you boot the system.

For the latest nvidia driver (190.53) you need first to apply the patch found here:
nvidia-betasam-2.6.33.patch.txt

You can apply a patch like this:
sh ./NVIDIA-Linux-x86-190.53-pkg1.run --apply-patch nvidia-betasam-2.6.33.patch.txt

This will create a new file: NVIDIA-Linux-x86-190.53-pkg1-custom.run with the patched driver, which is compatiple with kernel 2.6.33.

Monday, March 17, 2008

multiple gcc versions in Slackware 12.0

Slackware's default compiler nowadays is gcc-4.1.2. If you need an older compiler from the 3.x series, then you may use the one from the pasture directory of the distribution.

The problem is that you cannot have them both, because the two packages have files with the same name. So, if you try to use installpkg to install the older compiler the installer will overwrite some gcc-4.1.2 files.

Fortunately, you don't need to compile gcc by your self. Eric Hameleers (alien bob) maintains an unofficial slackbuilds repository hosted in slackware. There is a gcc package: http://www.slackware.com/~alien/slackbuilds/gcc34/ which is compatible with the official one.

Thursday, May 10, 2007

Matlab R2007b ugly bug

Just installed the latest Matlab software on my Slackware 11 PC and after using it for less than 120 seconds it crashed. I tried to replicate the conditions under which matlab crashed and it was really easy. In matlab's main window in the menu I went to File->Preferences... and in the Preferences window just pressing Fonts in the left navigation bar was enough to crash Matlab.

It must have been a java related thing, because I managed to fix it by just updating matlab's java jre. OK, well here is a solution:

  1. Download java's latest jre and select the Linux (self-extracting file).
  2. Extract the jre: "sh jre-6u1-linux-i586.bin". This will create a jre1.6.0_01 directory. I did not want to update slackware's java. I leave mr. Volkerding to do that for me :). Matlab comes with a local copy of jre and this is what is used by default unless the MATLAB_JAVA enviromental variable is set to point to an external jre directory when $MATLAB_ROOT/bin/matlab script is executed. The matlab's local copy of java is under $MATLAB_ROOT/sys/java/jre/glnx86, at least for the linux x86 version.
  3. I copied the jre1.6.0_01 directory there and updated the jre.cfg file of the directory with the new jre version "echo jre1.6.0_01 > jre.cfg". The old version was 1.5.0.
  4. I also removed the old jre directory: jre1.5.0 but this is optional.
After this everything worked fine.
Happy "Matlabing"

Wednesday, November 01, 2006

Mplayer rc1

Mplayer entered in rc state. It must have been more than 2-3 years it was on a pre-release state.
I guess 1.0pre8 must have been the last pre-release version.
8 pre-releases is not that much... Links 2.1 is in pre-release 23 :)