So, I finally got around to playing with kde-4.1.0 (yes, I know
4.1.1 is now out, but I'd already done the downloads so I figured
this was good enough to at least see what was happening.  I also
hoped I wouldn't need kdebase-workspace which is nearly as large as
the runtime.  The following comments are for building under /opt
with my normal desktop already installed in /usr (so, the extras
have to come _first_ on my PATH and PKG_CONFIG_PATH, unlike
PKG_CONFIG_PATH for Qt4 in the current book).

 Let's get one thing clear - I'm not a "desktop environment" person
- the less on my desktop, the better.  If I want to run a graphical
application, I either run it from a menu, or from an association
(e.g. firefox thinks I use xpdf to display pdfs - the current symlink
tells a different story), or I type its name on the panel
(ctrl-alt-space in icewm).  So, my aim is to compile as little as
possible to provide the functionality I'm looking for.

 Now, there are a _lot_ of pages out there (particularly within
techbase.kde.org) which suggest you have to use a metric shed-load
of extra packages to have a chance of running any of this, so I
thought I'd post my comments on what works for me, particularly
dependencies. and what the problems are.  Note that I don't build
kdepim, nor any extras other than from graphics and multimedia.

 General dependencies:
 --------------------

 Alsa - the mixer in kdemultimedia needs at least 1.0.14a, I
upgraded to 1.0.17{,a} before building kdelibs.

 Clucene-0.9.21 - a search library (according to its website it's
coded in c++ so it's faster than lucene).  Running a desktop search
is of zero interest to me, but this is required for strigi for kdelibs.

 Exiv2-0.17.1 - for gwenview (an image viewer) in kdegraphics.

 Libusb-0.1.12 - for gphoto, and thus for kamera, also adds support
for logitech mich to KControl.

 Libgphoto2-2.4.2

 Gphoto2-2.4.2

 Cmake-2.6.1 - the basis of how kde4 is built.  For 'nix users it
just replaces ./configure and you get to learn a whole lot of things
like -DCMAKE_INSTALL_PREFIX=/wherever ( like --prefix= ).

 Strigi-0.5.10 - targetted as a replacement for grep and find, with
a desktop daemon.  Provides 'deepfind' and 'deepgrep' commands.  It
seems to only work within its database - fortunately, the daemon is
not needed for a minimal compile, just the headers and libraries.

 Qt-x11-opensource-src-4.4.1 - with the current book's instructions

 Poppler-qt4.pc >= 0.6.0 is needed to be able to display pdfs in
okular.  Obviously, the poppler on my BLFS-6.3 system fails this.
The pure64 system has a patched 0.6.4 which works (just recompile
now qt4 exists).  I'll be sticking with this until I upgrade my gnome
packages to some that can use poppler-0.8, but the adventurous should
probably go straight to 0.8, at least you won't have to look for
back-ported security fixes.

 Unfulfilled dependencies for kdelibs:
 ------------------------------------

 Soprano - required for nepomuk, which is something for the "semantic
desktop".  Reputedly slow with the default backend, and the faster
alternative needs java.  For me, that is just bloat.

 Nepomuk - see soprano ;)

 OpenEXR - a format for HDR (high dynamic range) images.

 Samba

 PCIUTILS - for direct access to PCI slots in kinfocenter

 RAW1394 - for firewire support in kinfocenter

 Unfulfilled dependencies for kdebase-workspace:
 ----------------------------------------------

 BlueZ - for bluetooth support

 NetworkManager-0.6.5 - a daemon for user-controlled networking,
maybe something to do with wireless.  I suspect it needs hal.

 Captury framework library - for video recording.

 XMMS - to support XMMS in the now playing data engine.

 Soprano (qv) - adds support for the Soprano data type to Plasma
Engine Explorer, whatever that means.

 Libxklavier - for xkb keyboard map switching utility.

 NB my base build includes lm-sensors (the 2.10 series, which I
believe is now old), this was detected along with Compositing
support and libxft.

 Unfulfilled dependencies for okular in kdegraphics:
 --------------------------------------------------

 libspectre (http://libspectre.freedesktop.org) - is used to render
postscript documents.  Unfortunately, 0.2.1 needs libgs.so from
ghostscript >= 8.61.  It looks as if the instructions for 8.53 in
the book will work (with the soinstall) and it also looks as if that
will work with cups, but I wasn't motivated to try upgrading my
current working print system.

 CHM - Google suggests this is some sort of M$ file format.  No idea
what is needed to provide the functionality.

 DjVuLibre - for djvu files, whatever they might be.

 EPub - for epub documents, again I'm not motivated to google.

 QCA2 (qca2.pc) - Qt Cryptographic Architecture for encrypted
OpenDocument Text : something I can recognise, but not relevant to
me.


 Unfulfilled dependencies for kdemultimedia:
 ------------------------------------------

  I didn't note anything except
 MusicBrainz - metadata lookup on the MusicBrainz server
 TunePimp - a library to provide MusicBrainz tagging in Juk


 Unused but supposedly needed for the complete kde:
 -------------------------------------------------

 Eigen1 and Eigen2 from http://eigen.tuxfamily.org - these are c++
templates.


 Kde-support:
 -----------

 These originally lived in kde-support within kde's subversion.
Separate releases are like hen's teeth, but various distros have
extracted them.

 Automoc4 - I used automoc4-0.9.87 from Arch Linux.

 Phonon - I used Phonon_4.2.0.orig from the debian pool (their diff
only debianizes it, it doesn't alter the code).

 Qimageblitz-0.0.4 - I think I grabbed this out of a fedora srpm.

  Not needed for the parts I built:

 Akonadi - this is actually documented (for PIM), and it does have a
release.  http://pim.kde.org/akonadi/

 Cpptoxml - I didn't find this, perhaps it isn't needed now.


 The basics of kde:
 -----------------

 Kdelibs-4.1.0

  This package demands to be built in a separate build directory, so
"configure" it with
 cmake -DCMAKE_INSTALL_PREFIX=/your/prefix ../kdelibs-4.1.0

  N.B cmake always requires a directory, usually '.'

 [ kdepimlibs comes here if you build kdenetwork, kdepim, kdeutils ]

 Kdebase-runtime-4.1.0

  Required on all platforms.

 Kdebase-workspace-4.1.0

 In practice, this is required - the description suggests it is only
needed for the full kde desktop, but it seems to be essential on all
'nix builds - vast swathes of wallpapers and graphics, but also
among other things plasma/containment.h which is needed in kdebase.

 Kdebase-4.1.0

 These are the applications which all kde programs can expect to
exist.  I did think I could try not building all of them the second
time, to save having to build kdebase-workspace.  I can't recommend
that - you run cmake in the top directory, then cd into each of the
application directories that you care about (they're all under
apps/) and run 'make' and 'make install' there.  This seems to work,
but in 4.1.0 konqueror will not run because it fails to install
libkonq.so.5 if you do it like that.


 Some extensions:
 ---------------

 Kdegraphics-4.1.0

 Builds without any obvious issues.

 Kdemultimedia-4.1.0

 In 3.5 I only build and install kmix.  Here, I thought I'd give it
all a go, less whatever I didn't get because of my lack of MusicBrainz
and TunePimp.  In fact, build failed quickly in 'juk' on an undefined
structure Tglib::Tag.  No references to this in the release
announcement for 4.1.1 so I went back to building only kmix - as noted
under kdebase, you have to run cmake for the package itself, then cd
to the required directory and run 'make' and 'make install' there.
That seems to work.


 Comments on some of the apps:
 ----------------------------

 dolphin - I don't normally use file managers, konqueror still seems
to do file management (e.g. open, or pop up open-with dialog), so I
don't know what this is for.

 gwenview - for me, this can only open jpegs.  I've ensured kamera
is built (with its own copy of dcraw), but that doesn't install any
application I can specify in "open with", so my .orf (Olympus raw)
files are unavailable.  Strange.

 kmix - works, but when run from a directory in /opt it can be a job
to get it to actually produce a display: on my LFS-6.3 x86, passing
the full PATH for qt and kde in the environment helped, on the newer
x86_64 install it seemed to need both LD_LIBRARY_PATH and
XDG_CONFIG_DIRS which was a bit odd.

 konqueror - much improved (it uses xft, in my case Bitstream Vera [
a very anglocentric set of glyphs ] seems to correctly render e.g.
czech, greek, russian - in kde3 I have to change the font to get
these all rendered.  However, I have one show-stopper bug on this -
when I start it from a terminal, and then close it, I don't get the
session back.  If I ^C and then launch it again it tells me it
wasn't shut down properly and gives me the option to reload the
previous session.  Nothing on google about this, and nothing in the
changelogs for 4.1.1.  Maybe it's a missing dependency, who knows ?

 konsole - seems to work.  I use basically white-on-black colours,
the option nearest to that is a bit dull for my liking but I dare
say it might be tweakable.  Since I use rxvt-unicode, I didn't waste
time trying to configure konsole to my likings.

 ksnapshot - seems to work, might be useful.  kbackgroundsnapshot -
seems to be similar, but tried to save to the same default file name
as ksnapshot, gave me an error dialog because it couldn't write it,
and failed.

 okular - works for pdfs.  As long as I don't have to pass a file
name to it, this would be ok (I loathe the "scroll sideways to see
the files available" kde dialogs).  In particular, this works on
x86_64 too (gcc-4.2 series, xorg-7.3 with xcb, where 64-bit evince
can crash my X session).

 plasma - provides the kde desktop (background, panel, menu).  On my
LFS-6.3 install I was unable to logout from this, and
ctrl-alt-backspace just gave me a black screen.  I'm sure it works
when used _by_ the kde apps, but running it from the command line
seems to be a bad idea (I only tried it to find out what it is for).

 xf86gammacfg - some sort of command-line front end to xgamma, no
obvious benefits.

 I was thinking about moving to 4.1 in a regular new build
(everything in /usr) - I'd miss kaffeine (not yet converted to kde4)
but that isn't something I use a lot.  The inability to shut
konqueror down cleanly will probably stop me trying that for now.

 Hope this helps people to understand how kde4 fits together, and
what is actually needed if you just want to run some kde
applications.

ĸen
-- 
das eine Mal als Tragödie, das andere Mal als Farce
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to