Apostolos\’ Daily Plate

OpenSolaris: Compiling clisp-2.48 for 64bit

Posted in OpenSolaris by asyropoulos on Απρίλιος 19, 2010

Compiling clisp-2.48 for 64bit OpenSolaris is a little bit tricky.


$ mkdir clisp; cd clisp
$ clisp_basedir=`pwd`
$ clisp_toolsdir=$clisp_basedir/clisp-tools
$ clisp_builddir=$clisp_basedir/clisp-build
$ mkdir $clisp_toolsdir

Now download libsigsegv and ffcal and unpack the archives and proceed:


$ cd libsigsegv-2.8   
$ CC="gcc-4.3.2 -m64" ./configure \
   --prefix=$clisp_toolsdir && make && \
   make check &&  make install
$ cd $clisp_basedir
$ cd ffcall-1.10
$ CC="gcc-4.3.2 -m64" ./configure \
  --build=x86_64-pc-solaris2.11 \
  --prefix=$clisp_toolsdir && \
  make && make check && \
  make install
$ cd $clisp_basedir
$ cd clisp-2.48
$ CC="gcc-4.3.2 -m64" \
  CFLAGS="-I/tmp/clisp/clisp-tools/include" \
  LDFLAGS="-L/tmp/clisp/clisp-tools/lib 
-R/tmp/clisp/clisp-tools/lib"  ./configure \ 
  --with-ffcall --with-libffcall-prefix=$clisp_toolsdir \
  --with-libsigsegv-prefix=$clisp_toolsdir --disable-mmap \
  --without-readline $clisp_builddir && \
cd $clisp_builddir && make

At some point it the compilation process stops because two symbols are undefined. However, these symbols are defined in libgnu.a. For some strange reason even if one adds the name of the library in the Makefile, the compiler fails to find the library. For this reason, I had to do the following dirty trick:


$ cd boot
$ mkdir foo
$ cp lisp.a lisp.a.orig
$ mv lisp.a foo/.
$ cp ../gllib/.libs/libgnu.a foo/.
$ cd foo
$ for lib in *.a; do ar x $lib; done
$ ar cr ../lisp.a *.o
$ ranlib ../lisp.a
$ cd ..
$ rm -rf foo
$ cd ..
$ make

Now the compilation of clisp completes succesfully! Note that the same trick should be applied even when compiling for 32bit OpenSolaris.

OpenSolaris: Backing up DVDs

Posted in OpenSolaris by asyropoulos on Απρίλιος 18, 2010

I buy a lot of DVDs since I do prefer to watch moview and TV shows on my TV set. However, I prefer not to view the original DVDs in order to keep them with no scratches. To do this I need to back up them. For this I use vobcopy (you can get binaries from www.sunfreepacks.com) and DVDShrink (this is not the official site of the software!) with wine. Once you have installed vobcopy and wine, you can install DVDShrink by entering the command

$wine dvdshrink32setup.exe

Here is what you should do in order to «rip» a DVD:

  1. Insert your DVD to your DVD drive and enter the comand:
    $ vobcopy -i /media/NAME_OF_DVD -I

    to see  that vobcopy works.

  2. «Rip» the DVD with the command
    $vobcopy -i /media/NAME_OF_DVD -m -o /destination/folder
  3. Start up DVDShrink and choose the /destination/folder and create shrinked copy of the DVD.
  4. Burn the resulting image (I assume you have asked DVDShrink to create a DVD image file).

That’s all!

PS It is now possible to use backlite, a Qt only version of k9copy. The packages (i.e., backlite and Qt)  will be available from sunfreepacks really soon.

OpenSolaris/OpenIndiana: Installing legacy nVIDIA drivers

Posted in OpenSolaris by asyropoulos on Απρίλιος 18, 2010

Here are the steps one must follow in order to install the legacy nVIDIA drivers in a system with an old nVIDIA card but a very recent version of OpenSolaris:


$ pfexec beadm list
$ pfexec beadm create osol-134-nvidia
$ pfexec beadm mount osol-134-nvidia /mnt
$ pfexec pkg -R /mnt uninstall -r driver/graphics/nvidia

When using a recent version of OpenIndiana, the last command of the previous list of commands must be replaced with the command


$ pfexec pkg uninstall driver/graphics/nvidia xorg-video

The commands that follow complete the installation of the legacy driver.


$ pfexec /bin/sh NVIDIA-Solaris-x86-96.43.16.run --extract-only
$ cd NVIDIA-Solaris-x86-96.43.16
$ pfexec pkgadd -R /mnt -d . NVDAgraphics NVDAgraphicsr
$ pfexec bootadm update-archive -R /mnt
$ pfexec beadm unmount -f osol-134-nvidia
$ pfexec beadm activate osol-134-nvidia
$ pfexec reboot -p

Note that the version of the legacy driver depends on one’s hardware.