[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

This is an old revision of the document!


Studioware Tips and Hints

Slackware

  • We recommend running Studioware on a stock vanilla Slackware Installation.

Extra Options for sepkg/multilib

  • /etc/sepkg/sepkg.conf can take any of the normal SlackBuild variables to change the default build locations etc.:
    • TMP=/home/tmp/se
    • OUTPUT=/home/tmp
  • In a multilib install set where you need to build/install 32bit packages, or in a 32bit chroot on a multilib host:
    • ARCH=i686 in /etc/sepkg/sepkg.conf

Java

  • Either jdk or openjdk is a buildtime requirement when using sepkg to build the audio or full queue. jdk can be found in the extra/ directory on any of the slackware mirrors, or alienBob has packages for openjdk here: http://www.slackware.com/~alien/slackbuilds/openjdk/

RT Scheduling and Locked Memory

  • Having problems with ulimit and locked memory?
    • Put the line 'ulimit -l unlimited' (or whichever value you need) in /sbin/initscript.sample and copy it to /etc/initscript. Do not remove the exec line!
    • Reboot required.
  • Having problems with applications (ardour3 for example) failing to start jack with realtime scheduling?
    • Add the line 'ulimit -r 65' to /etc/initscript as described above.
    • Reboot required.

Kernel/Lilo

  • Using the threadirqs kernel option (Please see http://wiki.linuxaudio.org/wiki/system_configuration#the_kernel)
    • This is only needed for kernels that are not tweaked for lowlatency performance.
    • Stock Slackware kernels can take advantage of adding 'append=“ threadirqs”' including the quotes to /etc/lilo.conf.
    • To check any kernel config run the following command: 'grep -e CONFIG_IRQ_FORCED_THREADING -e CONFIG_PREEMPT=y /boot/[your kernel config]'.
    • To check your current running kernel run this command: 'zgrep -e CONFIG_IRQ_FORCED_THREADING -e CONFIG_PREEMPT=y /proc/config.gz'.
    • Add the 'threadirqs' boot option by editing /etc/lilo.conf and adding 'append=“ threadirqs”' including the quotes.
    • Run Lilo 'lilo'.
    • Reboot required.

Asoundrc

A carefully crafted ~/.asoundrc may be needed in some cases.

Mate

  • MATE-1.6.2 build script replaces the following Studioware packages on 14.1:
    • atkmm-2.22.7-i486-1_msb > atkmm-2.22.4-i686-2se.txz [libraries]
    • cairomm-1.10.0-i486-1_msb > cairomm-1.9.8-i686-2se.txz [libraries]
    • glibmm-2.36.2-i486-1_msb > glibmm-2.32.1-i686-1se.txz [libraries]
    • gtkmm-2.24.4-i486-1_msb > gtkmm-2.24.0-i686-2se.txz [libraries]
    • gtksourceview-2.10.5-i486-1_msb > gtksourceview-3.7.2-i686-1se.txz [libraries]
    • mm-common-0.9.6-noarch-1_msb > mm-common-0.9.5-i686-2se.txz [libraries]
    • pangomm-2.34.0-i486-1_msb > pangomm-2.28.1-i686-2se.txz [libraries]
    • libsigc++-2.2.11-i486-1_msb > libsigc++-2.2.10-i686-1se.txz [development]
Please be sure to use the Studioware packages instead. FYI: Mate 1.6.2 seems to run fine with the Studioware-14.1 packages listed above.

CCache

Using ccache can speed up rebuilds a lot. When set up, it caches the binary objects as applications are built, and later it copies those objects back, instead of having to recompile them.

Slackware comes with ccache.

To start using it, get root and:
cd /usr/local/bin
cp /usr/bin/ccache .
ln -s ccache cc
ln -s ccache c++
ln -s ccache gcc
ln -s ccache g++

To set a max size for the cache, use EG:
ccache -M 5G
That sets a max size of 5GB in ~/.ccache
You obviously need to set it for your needs and available space.

To see some info about ccache, do:
ccache -s

To temporarily turn it off:
CCACHE_DISABLE=1
can be put in a SlackBuild or exported in the shell.
If that fails to work then just move the symlinks out of /usr/local/bin

and don't forget to read the man page.

Sources

  • Originally written by mesa
  • Contributions by dive

 studioware:tips_and_hints ()