Thought I'd share my progress on building KDE4 with everyone. I think the
biggest contribution I have is a nearly-complete dependency list.
Because of the list, this will be a somewhat long message.
A few notes beforehand, I made this list by grepping all the CMakeLists.txt for
every package, as well as looking at cmake's output.
I think I've gotten at least mostly everything that is actually checked for
(omitting some redundancies), but there may be something required
that is not checked for. Also, note that some optional packages are only
optional in the sense that kde will compile without them.
Some, such as pcre, really should be required, as khtml will need it to render
many sites.
kdebase has been split into kdebase, kdebase-runtime, and kdebase-workspace.
I'm pretty sure kdebase needs to go first, but I am
uncertain as to the order of the other two.
Also, you may notice that I don't have kdelibs or base listed as dependencies
for most packages. Everything has a check reading
'find_package(KDE4 REQUIRED)' which looks like a variable expansion, but I
could not find a definition of it anywhere. In any case,
I would say to install in order kdelibs, kdepimlibs, kdebase, kdebase-runtime,
kdebase-workspace, then everthing else.
All packages compiled with the following commands: (from top sourcedir)
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/kde-4.0.0
make
make install
Obviously, the prefix can be adjusted to whatever you want. Also, there is a
switch analogous to --sysconfdir, but I don't know what it is.
You will want this to put config files into /etc/kde4 or similar. I wasn't too
concerned with it myself.
Anyway, on to the dependency list
kdelibs
Required: strigi, jpeg, giflib, libpng, libxml2, libxslt, shared-mime-info,
qt4
Optional: alsa, openssl, libintl, xorg, soprano, jasper, openexr, gssapi
(kerberos), gamin, acl, avahi, aspell, hspell, enchant, pcre
kdepimlibs
Required: kdelibs, gpgme, boost
Optional: openldap, cyrus-sasl
kdebase
Required: kdelibs, qimageblitz
kdebase-runtime
Required: kdepimlibs, samba
Optional: soprano, xine
kdebase-workspace
Optional: lm_sensors, libcaptury, libusb, bluez, networkmanager,
libxklavier, libraw1394
kdeadmin:
Required: kdepimlibs
kdeartwork
Optional: xscreensaver
kdebindings
Optional: ruby, pyqt4, gmcs, gacutil
kdeedu:
Optional: libusb, cfitsio, libsbigudrv, libnova, facile, openbabel2, eigen,
boost.python
kdegames:
Optional: ggz-client-libs
kdegraphics:
Optional: gphoto2, sane, exiv2, poppler, ghostscript, chm, djvulibre, tiff,
openexr
kdemultimedia
Required: kdepimlibs, alsa
Optional: taglib, libvorbis, cdparanoia, flac, tunepimp, libtheora,
libmusicbrainz
kdenetwork
Required: kdepimlibs, boost
Optional: ktorrent, libvncserver, qca2, jpeg, openslp, decibel, libidn,
sqlite, xmms, mdnsresponder
kdesdk
Required: kdepimlibs
Optional: subversion
kdeutils
Required: kdepimlibs
Optional: tpctl, python, gmp, libzip, libarchive
kdewebdev
Optional: tidy
A couple other things to note:
1) It looks like kdenetwork still looks for Apple's mdnsresponder, even
though kdelibs asks for avahi. Don't ask me why.
2) kdewebdev looks for tidy's header files in /usr/include/tidy/, but the
blfs installation puts them directly in /usr/include.
2 seds will fix the problem:
sed -i 's%tidy/%%g' cmake/modules/FindLibTidy.cmake
sed -i 's%tidy/%%g' klinkstatus/src/tidy/tidyx.h
A lot of new packages in the list, and many of them depend on other things not
in the book, but I'll leave it here for now.
Ask me if you want any more details.
Robert Daniels
--
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page