Linux HOWTOs

About | Home | Search


HOWTO: kdelibs
Description: KDE libraries
Click here for ChangeLog
NOTE: I use GNU tar >= 1.13.25 so it's -j for .tar.bz2 files,
it's safe to assume that make, gcc, binutils, fileutils/coreutils, gawk, sed, and grep are prerequisites for almost everything


# kdelibs 3.5.1
# =============
# Slackware 8.1's 'kdelibs' package includes version 3.0.1, 9.0's includes
# 3.1, 9.1's includes 3.1.4, 10.0's includes 3.2.3, 10.1's includes 3.3.2,
# 10.2's includes 3.4.2, and 11.0's includes 3.5.4
#
# Slackware 10.2 includes KDE 3.4.2
# Slackware 11.0 includes KDE 3.5.4

# Check out my KDE 3.5 howto for more info.

# If you want to uninstall kdelibs, cd into the source directory and run
# 'make uninstall'.

# Prerequisites:
# gawk
# sed
# grep
# gettext
# ACL and Attr (optional)
# XFree86 or X.org
# zlib >= 1.1
# libpng
# libjpeg (recommended)
# Perl
# Qt >= 3.3.2
# aRts
# doxygen (recommended)
# mDNS (recommended)
# lua (optional?)
# IDN
# CUPS >= 1.1.9 (optional)
# libxml2 >= 2.4.8 (recommended)
# libxslt >= 1.0.7 (recommended)
# bzip2
# libtiff (optional?)
# JasPer
# pkg-config
# OpenEXR (optional)
# freetype >= 2.0.0 (recommended)
# OpenSSL >= 0.9.6 (recommended)
# Kerberos (optional)
# PCRE
# aspell (optional?)
# hspell >= 0.9 (optional)
# ALSA (optional?)
# SANE (optional)
# libldap (optional)
# FAM (recommended)
# NTLM (optional)
# libmng (optional)
# libart >= 2.3.8 (recommended)
# libaudiofile (recommended)

# I create a directory for KDE source directories and one for tarballs and
# put all of them in there
mkdir -p -m 0700 ~/src/kde ~/installed/kde

cd
test -f installed/kde/kdelibs-3.5.1.tar.bz2 &&
 mv installed/kde/kdelibs-3.5.1.tar.bz2 .
test -f installed/kdelibs-3.5.1.tar.bz2 &&
 mv installed/kdelibs-3.5.1.tar.bz2 .
test ! -f kdelibs-3.5.1.tar.bz2 &&
 wget http://download.kde.org/stable/3.5.1/src/\
kdelibs-3.5.1.tar.bz2

# Verify tarball w/ md5sum:
echo "2a22193ae7c23f3759b02723dab02d30  kdelibs-3.5.1.tar.bz2" | \
 md5sum -c

find src/kde src -maxdepth 1 -type d -name "kdelibs-*" \
 -exec rm -r {} \;
cd src/kde
tar xjvf ~/kdelibs-3.5.1.tar.bz2
cd kdelibs-3.5.1
test $UID = 0 && chown -R root:root .

# If you do have fam installed and would rather use it than dnotify, remove
# the --disable-libfam and --enable-dnotify options below

# I have OpenSSL installed under /usr/local/ssl (the source default).  I
# have CUPS installed, it is linked with OpenSSL.  When configure looks for
# CUPS, it says it's too old.  Looking at config.log, I see that configure
# can't find libssl at that point, so I pass USER_LDFLAGS (LDFLAGS doesn't
# work) to configure.

USER_LDFLAGS=-L/usr/local/ssl/lib \
./configure --prefix=/opt/kde --with-ssl-dir=/usr/local/ssl \
 --disable-debug --disable-libfam --enable-dnotify
make

# Become root to install it
su

test -x /sbin/removepkg && /sbin/removepkg kdelibs
make install

# Add /opt/kde/lib to /etc/ld.so.conf if it's not already in there:
grep "^/opt/kde/lib$" /etc/ld.so.conf > /dev/null 2>&1 ||
 echo "/opt/kde/lib" >> /etc/ld.so.conf
ldconfig

# Create a /etc/profile.d/kde.sh
cat << EOF > /etc/profile.d/kde.sh
#!/bin/sh
KDEDIR=/opt/kde
PATH="\$PATH:\$KDEDIR/bin"
MANPATH="\$MANPATH:\$KDEDIR/man"
export KDEDIR PATH MANPATH
EOF
chmod 755 /etc/profile.d/kde.sh

# Become yourself again
exit

# Update your non-root account's environment
. /etc/profile.d/kde.sh

cd
rm -f installed/kde/kdelibs-*.tar.* installed/kdelibs-*.tar.*
mv kdelibs-3.5.1.tar.bz2 installed/kde/

Back to the list


Last updated: Wed, 29 Apr 2020 22:04:50 -0400
Jason Englander <jason at englanders dot us>