Getting Started/Set up KDE 4 for development (de)

< Getting Started
Revision as of 19:36, 16 February 2008 by Dhaumann (Talk | contribs)

Jump to: navigation, search


Contents

Getting_Started/Set_up_KDE_4_for_development

KDE 4 für Entwicklung von Software aufsetzen
Anleitungsserie   Am Anfang
Voriges Kapitel   KDE 4 erzeugen
Nächstes Kapitel   Anderes zum Thema Entwickeln in KDE4
Weiterführende Texte   n/a
Navigation   Deutsche Startseite
{{{3}}}
 
noframe
Diese Seite setzt voraus, dass Sie bereits kdelibs, kdepimlibs und kdebase anhand der der Anleitung unter Getting Started/Build/KDE4 erstellt haben
Anmerkung


KDE 4 Anwendungen & Sitzungen starten

Um mit der Entwicklung für KDE 4 zu beginnen, gibt es folgende drei Möglichkeiten:

Alle drei Optionen werden nachfolgend beschrieben.

{{{3}}}
 
noframe

Wenn Sie beim ausführen von KDE 4 Anwendungen Fehler wie den folgenden erhalten:

 Qt: Session management error: Could not open network socket
 QMutex::lock: Deadlock detected in thread -1241241936

Oder wenn Sie startkde ausführen und es hängenbleibt, lesen Sie diesen Artikel für einen möglichen Ausweg.

Anmerkung


KDE 4 Anwendungen starten

Auf der normalen Shell mit sux

Für diese Methode wird das Tool sux (http://fgouget.free.fr/sux/sux-readme.shtml) benötigt. sux ist in den meisten Distributionen bereits enthalten. Anderenfalls können Sie auf die unten beschriebene Methode Normale Shell ohne sux zurückgreifen. sux erlaubt Ihnen, zu einem anderen Nutzer zu wechseln und konfiguriert dabei automatisch das X Forwarding (Authentifizierung und Export der DISPLAY Variable).

Um sich anzumelden, geben Sie sux - kde-devel ein.

Alle Umgebungsvariablen und alles sonstige sollten korrekt von Ihrer .bashrc gesetzt werden. Um eine Applikation zu starten, geben Sie einfach ihren Namen ein; zum Beispiel: kwrite

{{{3}}}
 
noframe

Wenn Sie Fehlermeldungen über fehlende MIME-Typen oder ähnliches erhalten, versuchen Sie folgendes:

  • führen Sie unset XDG_DATA_DIRS ; kbuildsycoca4 aus.
Anmerkung


Normal Shell ohne sux

Die einfachste Methode um KDE 4 Anwendungen zu starten, ist es su zur Anmeldung als kde-devel Benutzer zu benutzen und dann einfach die gewünschten KDE 4 Anwendung von der Shell aufzurufen. Um sich anzumelden, geben Sie su - kde-devel ein und nachdem Sie Ihr Passwort eingegeben haben führen Sie export DISPLAY=:0 aus.

{{{3}}}
 
noframe
Das Exportieren der DISPLAY Variable ist nötig, damit die KDE 4 Anwendungen auf Ihrem normalen KDE 3 Desktop erscheinen.
Anmerkung


Alle Umgebungsvariablen und alles sonstige sollte bereits von Ihrer .bashrc korrekt gesetzt worden sein. Um eine Anwendung zu starten, geben sie einfach ihren namen ein; zum Beispiel: kwrite

{{{3}}}
 
noframe

Wenn Sie Fehlermeldungen über fehlende MIME-Typen oder ähnliches erhalten, versuchen Sie folgendes:

  • führen Sie unset XDG_DATA_DIRS ; kbuildsycoca4 aus
Anmerkung


{{{3}}}
 
noframe
{{{1}}}
Anmerkung


Benutzung von SSH

Der einfachste Weg um eine KDE 4 Anwendung über SSH auf Ihrem aktuellen Desktop auszuführen, ist es auf folgendem Weg eine Shell mit X-Forwarding zu bekommen: ssh -X kde-devel@localhost Jetzt können Sie KDE Anwendungen wie gewöhnlich ausführen, zum Beispiel: kwrite Diese zwei Zeilen können auf einfache Weise kombiniert werden: ssh -X kde-devel@localhost kwrite

{{{3}}}
 
noframe

Falls Sie Fehlermeldungen erhalten, probieren Sie die Tips aus dem vorhergehenden Abschnitt aus.

Anmerkung


Anmeldung ohne Passwort

Bevor Sie vorherige Methode sinnvoll benutzen können, müssen Sie eine Anmeldung ohne Passwort einrichten. Dafür führen Sie folgenden Befehl unter Ihrem normalen Benutzeraccount aus: ssh-keygen -t rsa Drücken Sie drei mal RETURN um den Pfad ~/.ssh/id_rsa zu akzeptieren und ein leeres Passwort zu vergeben. Anschliessen kopieren Sie die einzelne Zeile aus ~/.ssh/id_rsa.pub die Ihnen die Ausgabe von cat ~/.ssh/id_rsa.pub liefert, in die Zwischenablage. Wechseln Sie nun mit ssh zurück zum kde-devel Benutzer öffnen Sie die Datei $HOME/.ssh/authorized_keys auf folgende Weise:

ssh -X kde-devel@localhost $HOME/kde/bin/kwrite \
 $HOME/.ssh/authorized_keys

Fügen Sie dort die zuvor kopierte Zeile ein, speichern Sie die Datei und beenden Sie KWrite. Versuchen Sie nun nochmal KWrite mit dem gleichen SSH-Befehl auszuführen; Sie sollten nun kein Passwort mehr benötigen: ssh -X kde-devel@localhost $HOME/kde/bin/kwrite

{{{3}}}
 
noframe
Das Anmelden per SSH ohne Passwort birgt gewisse Sicherheitsrisiken. Vergewissern Sie sich deshalb, dass Ihre ~/.ssh/id_rsa Datei geschützt ist, indem Sie den Zugriff auf sie mit chmod og-xrw ~/.ssh/id_rsa einschränken (Die Datei sollte diese Rechte eigentlich bereits bei der Erstellung erhalten haben)
Warnung


Die SSH desktop Datei

Wenn Sie Anwendungen einfacher benutzen wollen, als Sie per SSH-Befehl von der Shell zu starten, besteht ein Weg darin, .desktop Dateien zu erstellen die automatisch per ssh zum anderen Benutzer wechseln.

{{{3}}}
 
noframe
Dies ist nur dann nützlich, wenn Ihre Desktop-Umgebung .desktop Dateien unterstützt. Immerhin KDE und GNOME tuen dies.
Anmerkung


Sie können eine existierenden .desktop Datei als Vorlage verwenden (Etwa eine von Ihrem Desktop) oder eine neue erstellen. Die Idee dahinter ist, dem auszuführenden Kommando die SSH-Verbindung auf folgende Weise voranzustellen: ssh -X kde-devel@localhost $HOME/kde/bin/

Eine einfache .desktop Datei die KWrite ausführt würde folgenden Inhalt haben:

[Desktop Entry] Categories=Qt;KDE;TextEditor; Comment= DocPath=kwrite/index.html Encoding=UTF-8 Exec=ssh -X kde-devel@localhost /home/kde-devel/kde/bin/kwrite %U GenericName=Text Editor Icon=kwrite InitialPreference=8 MimeType=text/plain Name=KWrite (kde-devel) Path= StartupNotify=false Terminal=false TerminalOptions= Type=Application X-DBUS-StartupType=Multi X-DCOP-ServiceType=non X-KDE-StartupNotify=true X-KDE-SubstituteUID=false X-KDE-Username=

Ktip.png
 
Tip
Anwendung, die wie hier über SSH gestartet werden, lösen nicht die korrekten Startereignisse aus, so dass Sie besser die "Startrückmeldung" für Ihre .desktop Dateien deaktivieren sollten.


{{{3}}}
 
noframe
Um auf diese Weise eine .desktop-Datei für KDE 4 Anwendungen zu erstellen, muss das Paket der Anwendung mit cmakekde in ~/kde/bin installiert worden sein.
Anmerkung


Starten von KDE 4 Sitzungen

Eingebettete KDE 4 Sitzung

Nested

Anstatt für die Software-Entwicklung einen vollständigen virtuellen X-Server zu benutzen, können Sie Xephyr zur Einbettung Ihrer KDE 4 Sitzung in Ihr KDE 3 oder eine andere X11-Umgebung verwenden.

Sie können dies auch mit xnest erreichen aber da xnest nicht mit Erweiterungen wie Render umgehen kann, bevorzugen viele Leute Xephyr.

Wenn Sie eine minimale KDE Sitzung verwenden wollen, führen Sie einfach Xephyr aus: (in Kubuntu als xserver-xephyr verfügbar; Gentoo Benutzer kompilieren x11-base/xorg-server mit USE="kdrive"):

Xephyr :1&

Sie können KDE nun ausführen:

export DISPLAY=:1
/path/to/kde4/bin/startkde-modified &

startkde-modified ist eine Kopie des startkde-Skripts welches die folgenden Zeilen am Anfang enthält:

export KDEDIR=`kde4-config --prefix` export LD_LIBRARY_PATH=$KDEDIR/lib export PATH=$KDEDIR/bin/:$PATH export KDEHOME=~/.kde4

Sie können Xephyr auch mit KDM über das Xdmcp Protokoll benutzen und einfach eine neue KDE 4 Sitzung zu KDM hinzufügen.

Unter Kubuntu können Sie das erreichen indem Sie

[Xdmcp]

  1. Whether KDM should listen to incoming XDMCP requests.
  2. Default is true

Enable=false

in /etc/kde3/kdm/kdmrc zu

[Xdmcp]

  1. Whether KDM should listen to incoming XDMCP requests.
  2. Default is true

Enable=true

verändern und Ihre /etc/kde3/kdm/Xaccess anpassen um ihrem lokalen System Zugriff zu gewähren. Zusätzlich sollten Sie eine Blockierende Regel für alle Ihre externen Schnittstellen für den Xdmcp Port einrichten falls Sie dies auf einem Laptop oder einem PC in einer unsicheren Umgebung verwenden.

Wenn Sie soweit sind, führen Sie einfach Xephyr aus:

Xephyr -query localhost :1 -host-cursor -screen 1024x768&

wobei -host-cursor versucht den Cursor des Hosts zu benutzen und -screen die Auflösung des Bildschirms festlegt.

Hinweis: Wenn Sie viele Fehlermeldungen bezüglich abgewiesener Verbindungen erhalten, sollten Sie die Option -ac an Xephyr übergeben:

Xephyr -ac :1&

Eine andere Möglichkeit die Sie versuchen können, wenn Sie diese Meldungen erhalten, ist es dem kde-devel Benutzer Zugriff auf den X-Server zu geben. Als root oder mit sudo führen Sie dazu folgenden Befehl aus:

xhost +local:kde-devel

Falls Ihnen Xephyr nicht zur Verfügung steht, können Sie auch Xnest benutzen:

Xnest -ac :1& export DISPLAY=:1



noframe
 
This section needs improvements: Please help us to

cleanup confusing sections and fix sections which contain a todo


Sping 00:25, 9 April 2007 (CEST)

I use this for my start script nested_kde4.sh:

#! /bin/bash
NESTED_KDE_DISPLAY_BACKUP=$DISPLAY
export DISPLAY=:0
Xephyr :1 -screen 1024x768 &
export DISPLAY=:1
$HOME/kde/bin/startkde-modified &
export DISPLAY=${NESTED_KDE_DISPLAY_BACKUP}

Falls Sie folgende Fehlermeldung erhalten:

"Call to lnusertemp failed (temporary directories full?).
 Check your installation."

versuchen Sie folgendes:

mkdir /var/tmp/kde-devel-kde4

Der obige Code setzt voraus das sie als Benutzer kde-devel arbeiten.

{{{3}}}
 
noframe
In den meisten Fällen müssen Sie startkde-modified mit startkde ersetzen
Anmerkung



Eigenständige KDE 4 Sitzung

Solitary

Um eine eigenständige KDE 4 Sitzung auszuführen, können Sie sie entweder, wie gewöhnlich, auf folgende Weise von der Kommandozeile starten:

X :1 & export DISPLAY=:1
startkde
noframe
 
Note
Wenn der X-Server die Verbindung verweigert und dabei folgendes ausgibt: Xlib: connection to ":1.0" refused by server, versuchen Sie X -ac :1 stattdessen.

oder Sie können KDE 4 zu Ihrem Login Manager hinzufügen. Wenn Sie KDM (oder einen kompatiblen Login Manager) benutzen, wird dies durch Erstellen einer .desktop Datei in entweder `kde-config --prefix`/share/apps/kdm/sessions/ oder in /usr/share/xsessions/ erreicht. Der einfachste Weg führt dabei über das kopieren einer existierenden kde.desktop-Datei nach kde4.desktop. Öffnen Sie diese neue .desktop-Datei in einem Texteditor und ändern Sie die Einträge zu Exec, TryExec und Name auf folgende Weise:

Exec=$HOME/kde/bin/startkde TryExec=$HOME/kde/bin/startkde Name=KDE4

Ersetzen Sie $HOME/kde in obigem Beispiel mit dem Pfad unter dem Sie KDE 4 installiert haben.

Nach dem Neustart des Login Managers (Alt+e in KDM) sollte dieser neue Eintrag im Sitzungs-Menu erscheinen.

noframe
 
Note
Sie sollten den Pfad zum 'qdbus' Programm (normalerweise ist dies $QTDIR/bin) in Ihrer $PATH Variable haben um sich erfolgreich anzumelden. Falls es dort nicht ist, werden Sie eine Fehlermeldung "Could not start DBus. Check your installation." erhalten.

Entwicklungsaufgaben

KDevelop

Dieser Abschnitt wird Ihnen erklären, wie sie KDevelop 3.4 benutzen um KDE 4 Anwendungen zu entwickeln. Wenn sie Fragen, Korrekturen oder Bedenken zu diesem Abschnitt haben, notieren Sie diese bitte auf der Diskussions-Seite.

Voraussetzungen

Sie benötigen hierfür mindestens KDevelop 3.4, das immernoch eine KDE 3 Anwendung ist. Versionen vor 3.4 haben unter anderem keine Qt 4 Unterstützung. Die KDE 4 Version von KDevelop ist für den produktiven Einsatz noch nicht geeignet. Sie erhalten KDevelop auf der KDevelop Homepage. Installieren Sie KDevelop wie alle anderen KDE 3 Anwendungen unter Ihrem normalen Benutzer und nicht mit Ihrem kde-devel Benutzer.

Sie benötigen ausserdem die neueste GDB Version. Die aktuelle ist 6.6.0.

Weiterhin müssen Sie die kdelibs API Dokumentation lokal vorliegend haben, was unter Anleitung zum Erstellen beschrieben wird.

Ausserdem benötigen Sie noch ctags, htdig, htmerge und htsearch. valgrind und callgrind könnten auch nützlich sein.

Stellen Sie sicher, das sie den Schritten unter KDE 4 Anleitung zum Erstellen befolgt und eine funktionierende KDE 4 Umgebung erstellt haben. Prüfen Sie, ob sich einfache KDE 4 Anwendungen wie Konsole oder KWrite von der Kommandozeile des kde-devel Benutzers ohne Probleme starten lassen.

Die folgenden Schritte werden alle mit dem kde-devel Benutzer ausgeführt. Sie müssen sich mit su - kde-devel unter diesem Benutzer anmelden.

Die Umgebung aufsetzen

KDevelop hat keine native Unterstützung für CMake Projekte. Glücklicherweise hat CMake die Fähigkeit selbst KDevelop Projekt Dateien zu erstellen. Um dies zu erreichen, müssen Sie CMake den Parameter -GKDevelop3 übergeben. Dies bewegt CMake dazu, Projektdateien für KDevelop neben den normalen Makefiles zu erstellen. Der beste Weg dazu ist es, die cmakekde Funktion in Ihrer .bashrc anzupassen. Ändern Sie einfach cmake $srcFolder -DCMAKE_INSTALL_PREFIX=$KDEDIR \ -DCMAKE_BUILD_TYPE=debugfull&& \ make && \ make install; in cmake $srcFolder -GKDevelop3 -DCMAKE_INSTALL_PREFIX=$KDEDIR \ -DCMAKE_BUILD_TYPE=debugfull&& \ make && \ make install;

Nachdem Sie das getan haben, melden Sie sich erneut an, damit sich die Veränderungen an der .bashrc Datei auswirken. Dann müssen Sie cmakekde erneut im (Wurzel) build Verzeichnis des Projekts an dem Sie mit KDevelop arbeiten wollen (wenn sie vorher nicht -GKDevelop3 im Erstellungsschritt ausgeführt haben). Wenn Sie zum Beispiel an Konsole, welches in kdebase liegt, arbeiten möchten, müssen Sie cmakekde im $KDE_BUILD/KDE/kdebase Verzeichnis ausführen. Dies erstellt unglücklicherweise alles erneut, aber nur einmal wenn Sie den Generator ändern.

Da alle Umgebungsvariablen des kde-devel Benutzers KDE 4 spezifisch sind, müssen diese zurückgesetzt werden, um der KDE 3 Umgebung zu entsprechen bevor KDevelop gestartet wird. Am einfachsten wird dies erreicht, indem Sie folgende Funktion zu Ihrer .bashrc hinzufügen:

function start3app {

 mkdir -p /tmp/$USER-kde
 export PATH=/opt/kde3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games 
 export LD_LIBRARY_PATH= 
 export KDETMP=/tmp/$USER-kde 
 export KDEVARTMP=/var/tmp/$USER-kde 
 export KDEHOME=$HOME/.kde 
 export KDEDIR=/usr 
 export KDEDIRS=$KDEDIR 
 export DISPLAY=:0 
 eval "$@"
 source $HOME/.bashrc   #Reset environment variables again

}

Die PATH und LD_LIBRARY_PATH Variable werden vom KDE 3 Benutzer übernommen, und sie könnten auf Ihrem System abweichen, Geben Sie echo $PATH und echo $LD_LIBRARY_PATH als normaler KDE 3 Benutzer ein, um diese Werte zu erhalten. Die obigen Funktion nimmt an, das KDE 3 im /usr Verzeichnis installiert ist, wie es unter Debian-Systemen der Fall ist. Falls Ihr KDE 3 in einem anderen Verzeichnis installiert ist, müssen Sie die Zeile die KDEDIR setzt entsprechend anpassen. Hier ist ein Beispiel, wie sie herausfinden unter welchem Verzeichnis KDE installiert ist; in diesem Beispiel ist es /opt/kde3:

kde-config --prefix /opt/kde3

Jetzt sollten Sie KDevelop starten können, indem Sie start3app kdevelop eingeben. Machen sie dies jetzt.

Ktip.png
 
Tip
Sie können jede KDE 3 Anwendung mit der start3app Funktion starten. Nützlich ist das zum Beispiele für Kompare und kdesvn. Sie können jedoch auf diesem Weg nicht KDbg starten umd KDE 4 Anwendungen zu debuggen, da sonst die die Umgebungsvariablen für die debuggte Anwendung falsch sind.


TroubleShooting

Symptom: kdevelop meldet "cannot talk to klauncher". Sie können keine Datei öffnen.

Lösung: fügen Sie Ihren KDE Bibliotheks-Pfad zum LD_LIBRARY_PATH hinzu, e.g.:

export LD_LIBRARY_PATH=/opt/kde3/lib

Einrichten von KDevelop

Jetzt, da KDevelop gestartet ist, müssen Sie einige Einstellung vornehmen. Gehen Sie dafür nach Einstellungen->KDevelop einrichten...->Dokumentation. Entfernen Sie alle Einträge die für KDE 4 nicht relevant sind.

{{note (de)| Obwohl Umgebungsvariablen wie $HOME in diesem Abschnitt verwendet werden, sollten Sie diese mit echten Pfaden ersetzen, da KDevelop keine Umgebungsvariablen auflöst.}

Optional können Sie die kdelibs API Dokumentation hinzufügen. Sie müssen sie zuvor erstellen. Dann fügen sie die Dokumentation durch Klick auf Hinzufügen... hinzu. In diesem Dialog verwenden Sie folgende Einstellungen:

  • Typ: Doxygen Documentation Collection (muss zuerst eingestellt werden)
  • Ort: $KDE_SRC/KDE/kdelibs/kdelibs-apidocs/index.html

Fügen Sie nun die Qt API Dokumentation hinzu, indem Sie folgende Einstellungen verwenden:

  • Typ: Qt Documentation Collection (muss zuerst eingestellt werden)
  • Ort: $HOME/qt-copy/doc/html/qt.dcf

Nachdem Sie die Dokumentation für kdelibs und die Qt API hinzugefügt haben, stellen sie sicher das alle Checkboxen (TOC,Index und Suche) aktiviert sind. Dann gehen Sie auf den Tab Volltextsuche und stellen sicherm das die Pfade zu den Programmen htdig, htmerge und htsearch korrekt sind. Sie können den Einstellungs-Dialog nun schliessen.

Jetzt ist es an der Zeit das Projekt an dem Sie arbeiten möchten zu öffen indem sie auf Projekt->Projekt öffnen klicken. Die Projektdateien befinden sich im build-Verzeichnis. Für Konsole müssen Sie zum Beispiel die Datei $KDE_BUILD/KDE/kdebase/apps/konsole/konsole.kdevelop öffnen. Sie müssen nun einige Projektspezifische Einstellungen unter Projekt->Projekt Optionen vornehmen. Sie müssen das für jedes Projekt machen, an dem Sie arbeiten möchten.

{{{3}}}
 
noframe

Manchmal ist keine KDevelop Projektdatei für das Verzeichnis in dem Sie arbeiten möchten verfügbar.

Dies kann verschieden Gründe haben, es hängt davon ab wie die CMake-Dateien geschrieben wurden. Für gewöhnlich sollten CMake-Dateien, die eine project(projectname) Anweisung enthalten gut funktionieren. Wenn Sie mit CMake vertraut genug sind, können Sie versuchen, diese Anweisung hinzuzufügen.

Ein Workaround dafür ist es, einfach die KDevelop Projektdatei eines darüberliegenden Ordners zu verwenden. In diesem Fall müssen Sie den Make Active Directory Eintrag im Kontextmenu des File Selectors in der Sidebar benutzen. Damit können Sie die anderen, unerwünschten Verzeichnisse beim erstellen und installieren ignorieren.

Anmerkung


  • C++ Unterstützung->Codevervollständigung
Hier müssen Sie die Vervollständigungs-Datenbanken für Qt und kdelibs hinzufügen und natürlich noch mehr wenn Sie mögen. Zum Beispiel könnten Sie eine Datenbank für kdepimlibs benötigen wenn sie an kdepim arbeiten.
Für kdelibs klicken Sie den Hinzufügen... Button und wählen KDevelop Custom Directory PCS Importer, dann fügen Sie Ihr KDE include Verzeichnis ($HOME/kde/include) zur Liste hinzu und fahren fort. Sie können den Dateiauswahldialog und den Hinzufügen... Button benutzen um es hinzuzufügen.
Jetzt fügen Sie die Datenbank für Qt 4 hinzu indem Sie KDevelop Qt4 PCS Importer auswählen. Sie müssen das Qt 4 include-Verzeichnis welches Sie unter $HOME/qt-copy/include finden hinzufügen.
{{{3}}}
 
noframe
Der Qt4 PCS Importer wird nur benötigt wenn Qt4 nicht installiert wurde, sie es also zum Beispiel direkt aus dem build-Verzeichnis heraus nutzen. Der Nachteil ber der Benutzung des Qt4 Importers ist das er während des Imports keinen Fortschritt anzeigt und die Applikation zu hängen scheint. Die Alternative ist es den Custom Directory PCS Importer dafür zu benutzen
Anmerkung


  • C++ Unterstützung->Qt-Optionen
Aktivieren Sie Qt Options aktivieren und wählen Sie Qt4 als Ihre Version. Setzen Sie den QMake Binary Pfad auf $HOME/qt-copy/bin/qmake. Dann wählen Sie Qt 4 style als Qt include syntax. Benutzen Sie $HOME/qt-copy/bin/designer für Designer Binary. Benutzen Sie den Pluginpfade ändern Dialog um das Plugin-Verzeichnis von KDE hinzufügen und so die KDE widgets im Designer zu sehen. Um das zu erreichen fügen Sie $HOME/kde/lib/kde4/plugins in das Textfeld ein und klicken den Hinzufügen-Button.
  • Ausführungsoptionen
Stellen Sie sicher das für Executable der korrekte Wert eingestellt ist. Wenn Sie zum Beispiel Konsole ausführen wollen, geben Sie $KDE_BUILD/KDE/kdebase/apps/konsole/src/konsole an. Sie sollten --nofork zu den Debug Parametern hinzufügen oder das Debuggen von einigen Anwendungen wie KMail wird fehlschlagen.
Da die start3app Funktion einige Umgebungsvariablen anpasst, müssen Sie diese hier zurücksetzen damit KDE 4 Anwendungen problemlos aus KDevelop heraus ausgeführt werden können.
Für einige Anwendungen, wie Konsole, ist dies nicht unbedingt nötig aber andere wie KMail werden abstürzen wenn Sie die Variablen nicht anpassen.
Klicken Sie einfach auf den Hinzufügen / Kopieren Button um neue Umgebungsvariablen hinzuzufügen. Sie werden die folgenden brauchen, die die selben wie in Ihrer .bashrc sind:
Name Value
KDEHOME $HOME/.kde4
PATH $KDEDIR/bin:$QTDIR/bin:/usr/local/bin:$PATH
LD_LIBRARY_PATH $KDEDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH
KDETMP /tmp/$USER-kde4
KDEVARTMP /var/tmp/$USER-kde4
KDEDIR $HOME/kde
KDEDIRS $KDEDIR
LD_BIND_NOW 42


  • Erstellungsoptionen->Erstellung
Stellen Sie sicher das hier das korrekte build-Verzeichnis eingetragen ist. Für Konsole ist es wiederum dieses: $KDE_BUILD/KDE/kdebase/apps/konsole.
  • Erstellungsoptionen->Make
Sie sollten Abruch bei erstem Fehler aktivieren. Ausserdem sollten Sie VERBOSE= oder VERBOSE=1 zu Weitere Make Optionen hinzufügen um Aussagekraft des Erstellungsprozesses zu steuern.
Wenn Sie mehr als einen Prozessor haben oder Sie Zugriff auf einen icecream cluster besitzen, sollten Sie die Option Mehrere Jobs ausführen aktivieren u nd die Anzahl der gleichzeitigen Prozesse auf die Anzahl der verfügbaren Prozessoren einstellen. Dies erhöht die Kompilierungsgeschwindigkeit. Es ist dsa gleiche wie die -j Option für Make.
  • Formatierung
Sie sollten alle Optionen hier so setzen, das sie zu dem Coding-Stil des Projekts an dem Sie arbeiten passen.
  • CTags->Allgemein
Sie müssen den Pfad zur CTag Binary korrekt setzen, die sich in Debian unter /usr/bin/ctags befindet.
Am besten aktivieren Sie noch die Option Bei mehr als einem Treffer, direkt zum Ersten gehen.

Jetzt sind Sie damit fertig Ihre Projekt-spezifischen Einstellungen zu konfigurieren. Sie sollten nun unter Einstellungen->Plugins konfigurieren... einige Plugins entfernen, die Sie nicht benötigen. Ich deaktiviere beispielsweise folgende Plugins:

Abbreviation Expansion, Code Snippets, Doxygen Support, Embedded Konsole, File Tree, Final Packaging Support, "Open with" Menu Addon, QuickOpen, Regular Expression Tester, Scripting, Security Checker, Shell Filtering and Insertion, Text Structure and Tools Menu Addition.

Sie sollten zumindest die Fettgedruckten entfernen.

Jetzt öffnen Sie, falls noch nicht geschehen, irgendeine Quelldatei. Dies aktiviert den Menueintrag Einstellungen->Editor konfigurieren..., wo Sie die Tabulatoroptionen so einstellen müssen wie Sie im Projekt an dem Sie arbeiten benutzt werden. Die wichtigsten Einstellungen sind:

  • Erscheinungsbild->Rahmen->Zeilennummern anzeigen: Sollte aktiviert sein.
  • Erscheinungsbild->Rahmen->Symbolränder anzeigen: Sollte aktiviert sein.
  • Bearbeiten->Tabulatoren
  • Bearbeiten->Statischer Zeilenumbruch->Markierung anzeigen: Sollte aktiviert sein
  • Einrückung->Automatische Einrückung->Einrückungs-Modus: Sollte C Style sein
  • Einrückung insgesamt

Im Hauptfenster klicken Sie auf den Tab CTags in der unteren Tableiset, dann klicken Sie auf Neu erstellen um eine CTags-Datenbank zur einfacheren Navigation im Quellcode zu erstellen.

Jetzt haben Sie alle wesentlichen Einstellunge vorgenommen, Gratulation!

KDevelop benutzen

Wenden Sie sich an das KDevelop Handbuch (englisch) um generell Hilfe zu Ihrer Arbeit mit KDevelop zu erhalten. Der folgende Abschnitt wird nur Spezialfälle im Bezug auf KDE 4 enthalten.

Debugging

KDE Anwendungen haben viele Symbole, was bedeutet, dass sie viel Speicher benötigen um eine angemessene Ladezeit beim Debuggen zu erreichen. Um einen GDB Entwickler zu zitieren: "Ich würde mich weigern KDE auf etwas mit unter 1 GB RAM zu debuggen." Wenn die Schrittfunktion des Debuggers zu langsam für Sie ist, versuchen Sie folgende Tips:

  • Lokale Variablen verstecken. Der Lokal Teil im linken Variablen Tab verursacht einen erheblichen Geschwindigkeitsrückgang bei der Schrittweisen Ausführung wenn Sie viele lokale Variablen haben. Klappen sie einfach den Lokal Teil des Baums zu, die lokalen Variablen werden nun nicht bei jedem Schritt aktualisiert. Sie können immernoch die Variablen untersuchen indem sie die Ausdruck evaluieren Funktion benutzen.
  • Benutzen Sie den Patch unter http://bugs.kde.org/show_bug.cgi?id=143977. Es verhindert die Aktualisierung des Framestack-Widgets bei jedem Schritt und beschleunigt damit die Schrittweise Ausführung erheblich. Der Patch führt zu einigen kleineren Ungereimtheiten weshalb er bisher noch nicht commited wurde.
{{{3}}}
 
noframe

KDevelop unterstützt bisher keine Änderungen am CMake build System. Das bedeutet, das Sie KDevelop nicht dazu benutzen können, Dateien zum Projekt hinzuzufügen oder zu entfernen oder irgend einen anderen Aspekt des Buildprozesses Ihres Projekts zu modifizieren.

Sie müssen stattdessen die CMake Dateien per Hand anpassen und dann erneut cmakekde ausführen. Lesen Sie das CMake Tutorial um zu lernen wie man das macht.

Anmerkung


Ktip.png
 
Tip
Wenn Sie an Bibliotheken arbeiten, müssen Sie diese zuerst installieren bevor Sie Ihre Änderungen an diesen testen oder debuggen können.

Da this lästig und zeitverschlingend ist, sollten Sie für alle betreffenden Bibliotheken Symlinks erstellen (ln -s), die aus dem Build-Verzeichnis auf das Installations-Verzeichnis verweisen.

Oft benutzen selbst einfache Programme interne Bibliotheken, zum Beispiel ist der Einstellungsdialog von Konsole in Wirklichkeit eine Bibliothek,

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal