kdelibs 3.5.10 in einem LFS kompilieren

Kategorie Linux 01.07.2009    Kategorie Linux Linux    Tags kde, lfs, linux    Kommentare 2 Kommentare

Ich baue derzeit in einer VirtualBox-VM ein Linux From Scratch auf. Zum Einen zum Lernen, zum andern möchte ich dort ein KDE 3.5.10 bauen. Solch eine VM ist leicht zu sichern. KDE 3.5 war toll, hat also irgendwo auch nostalgische Gründe. Wink

Jedenfalls kommt es beim Bau der kdelibs zu einem Error während make. Es hat mich einige Zeit gekostet, einen Fix in der Mailing Liste für das Problem zu finden, daher möchte ich das hier mal dokumentieren. Diese Lösung stammt von Petr Ovtchenkov.

Erstmal der Fehler:

/bin/sh ../../libtool --silent --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../.. -I../../dcop -I../../kdecore -I../../kio/kssl -I../../kjs -I../.. -I./.. -I../../kdecore/network -I./../kssl -I../kssl -I./../../interfaces -I../../dcop -I../../libltdl -I../../kdefx -I../../kdecore -I../../kdecore -I../../kdecore/network -I../../kdeui -I../../kio -I../../kio/kio -I../../kio/kfile -I../.. -I/opt/qt/include -I. -I/opt/kde-3.5.10/include -D_LARGEFILE64_SOURCE -DQT_THREAD_SUPPORT  -D_REENTRANT  -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common  -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION  -c -o libksycoca_la.all_cpp.lo libksycoca_la.all_cpp.cpp
In file included from /usr/include/asm/fcntl.h:1,
                  from /usr/include/linux/fcntl.h:4,
                  from /usr/include/linux/inotify.h:11,
                  from kdirwatch.cpp:74,
                  from libksycoca_la.all_cpp.cpp:2:
/usr/include/asm-generic/fcntl.h:117: error: redefinition of 'struct flock'
/usr/include/bits/fcntl.h:145: error: previous definition of 'struct flock'
/usr/include/asm-generic/fcntl.h:140: error: redefinition of 'struct flock64'
/usr/include/bits/fcntl.h:160: error: previous definition of 'struct flock64'

Die Lösung ist folgende: Nach dem configure führt man folgendes sed-Kommando aus:

sed -i -e 's|linux/inotify|sys/inotify|' \
       -e '/^static inline int inotify_init/,/^}/d' \
       -e '/^static inline int inotify_add_watch/,/^}/d' \
       -e '/^static inline int inotify_rm_watch/,/^}/d' kio/kio/kdirwatch.cpp

Danach gehts wie gewohnt mit make weiter.

Beim Paket kdepim siehts genauso aus. Auch hier wird nach dem configure folgendes ausgeführt:

sed -i "s@ \*/@&\n#define HAVE_FOPENCOOKIE@" libkdenetwork/libgpgme-copy/{assuan,gpgme}/funopen.c
sed -i -e 's|linux/inotify|sys/inotify|' \
       -e '/^static inline int inotify_init/,/^}/d' \
       -e '/^static inline int inotify_add_watch/,/^}/d' \
       -e '/^static inline int inotify_rm_watch/,/^}/d' kmail/editorwatcher.cpp

Danach sollte das Kompilieren funktionieren.

KDE 4.0.0 ist da!

Kategorie Software 11.01.2008    Kategorie Software Software    Tags kde    Kommentare 0 Kommentare

Juhuuu, KDE 4.0.0 ist da! Ich freu mich schon auf Tests mit diesem Desktop. Wie die Pakete unter Kubuntu zu installieren sind, ist auf kubuntu.org zu lesen.

Was man sich aber gerade wegen der ganzen Euphorie immer ins Gedächtnis rufen sollte: Dies ist das erste Release einer ganzen Serie und ich persönlich gehe mal davon aus, dass es so richtig noch nicht funktionieren wird. Auf meinen Desktops werde ich wahrscheinlich erst 4.1 einsetzen (was aber auch dieses Jahr noch kommen soll). Nach meinen bisherigen Informationen sind viele Anwenderprogramme (z.B. Kontact) noch nicht endgültig portiert, sondern hauptsächlich der Kern ist fertig. Dennoch sind die Features sowas von vielversprechend, dass ich mich richtig drauf freue. Und gut Ding will Weile haben! Jedenfalls wird erstmal VirtualBox damit gefüttert.

Hier gibts auch noch einige Screenshots:
http://jarzebski.pl/read/kde-4-rev-758000.so http://picasaweb.google.com/mmauder/KDE400

[Update]
Und hier haben wir auch schon die offizielle Ankündigung!

Multimedia-Tasten unter KDE zum Laufen bringen


Ich habe eine Tastatur, die Extra-Tasten hat. Vor allem die Tasten, um die Lautstärke zu erhöhen bzw. zu verringern, habe ich seit meinem Umstieg auf Kubuntu vermisst. Heute habe ich mich mal daran gemacht, diese wieder zum Funktionieren zu bringen. Das folgende bezieht sich hierbei ausschließlich auf KDE!

Den Tasten müssen entsprechende Symbole zugeordnet sein. Dies kann man mit dem Programm xev überprüfen (genaueres steht im Gentoo Wiki). Da das bei mir schon gepasst hat, überspringe ich diesen Teil mal. (Wer hier ein Problem hat, sollte dem Gentoo Wiki folgen.)

Zwar waren also die richtigen Symbole XF86AudioRaiseVolume und XF86AudioLowerVolume verknüpft, dennoch passierte nichts, wenn man die Tasten drückte. Zuerst probiere ich in KMix, den Hauptkanal globale Tastenkombinationen zuzuordnen (rechte Maustaste auf den Kanal direkt). Allerdings brachte das auch keinen Erfolg.

kdeaddons

Kategorie Software 21.11.2007    Kategorie Software Software    Tags chm, kde    Kommentare 0 Kommentare

Wie immer sinds die Kleinigkeiten, die einen manchmal erfreuen können.

Durch das Installieren des Pakets kdeaddons werden einige Extras für KDE geladen, wie z.B. ein kleiner Systemmonitor für die Taskleiste. Sind nur Kleinigkeiten, aber trotzdem sehr hilfreich, finde ich.

sudo aptitude install kdeaddons

Noch ein Nachtrag: Das Paket kchmviewer lohnt sich auch zu installieren. Gelegentlich muss man doch mal eine komplierte HTML-Hilfe ansehen (Endung .chm). Das kommt mehr aus der Windows-Welt und ist deshalb unter Linux unüblich. Aber falls man es doch braucht, ist kchmviewer das KDE-Programm dazu.

Ich habe hier nach einer Möglichkeit gesucht, da das "Buch" Cool Shell Skripts von http://freebooks.homelinux.org/ in diesem ungewöhnlichen Format vorliegt.