KDevelop4/Manual/Sessions and projects/de: Difference between revisions
(Initiale Übersetzung) |
(Initiale Übersetzung) |
||
Line 20: | Line 20: | ||
We next want to populate this session with projects that for the moment we assume already exist somewhere (the case of starting projects from scratch is discussed elsewhere in this manual). For this, there are essentially two methods, depending on whether the project already is somewhere on your hard drive or whether it needs to be downloaded from a server. | We next want to populate this session with projects that for the moment we assume already exist somewhere (the case of starting projects from scratch is discussed elsewhere in this manual). For this, there are essentially two methods, depending on whether the project already is somewhere on your hard drive or whether it needs to be downloaded from a server. | ||
==== Option 1: | ==== Option 1: Projekt aus einem Versionskontrollsystemserver importieren ==== | ||
Let's first assume that the project we want to set up -- the Linux kernel -- resides in some version control system on a server, but that you haven't checked it out to your local hard drive yet. In this case, go to the <menuchoice>Project</menuchoice> menu to create the Linux kernel as a project inside the current session and then follow these steps: | Let's first assume that the project we want to set up -- the Linux kernel -- resides in some version control system on a server, but that you haven't checked it out to your local hard drive yet. In this case, go to the <menuchoice>Project</menuchoice> menu to create the Linux kernel as a project inside the current session and then follow these steps: |
Revision as of 12:02, 8 May 2012
Sitzungen und Projekte: Die Grundzüge von KDevelop
In diesem Kapitel wird ein Teil der Terminologie von KDevelop und wie KDevelops Stukturen arbeiten erläutert. Insbesondere wird das Konzept von Sitzungen und Projekten eingeführt und erklärt, wie Sie die Projekte mit denen sie arbeiten wollen einrichten.
Begrifflichkeiten
KDevelop nutzt das Konzept von Sitzungen und Projekten. Eine Sitzung beinhaltet alle Projekte die etwas miteinander zu tun haben. Nehmen wir beispielsweise an, Sie seien der Entwickler einer Bibliothek und einer Anwendung, die diese benutzt. Ein Beispiel hierfür ist die Entwicklung an KDevelop: hier könnten Sie die Kern-KDE Bibliothken als die Bibliothek und KDevelop als die benutzende Anwendung in einer Sitzung entwickeln. Ein anderes Beispiel wäre, wenn Sie als Linux-Kernel-Entwickler gleichzeitig parallel an einem Gerätetreiber für Linux arbeiten, der noch nicht in den Kernel-Baum gemergt wurde.
Im letztgenannten Beispiel würden wir in KDevelop eine Sitzung erstellen, die zwei Projekte hat: den Linux-Kernel und den Gerätetreiber. Man würde diese in eine einzige Sitzung zusammenfassen (statt zwei Sitzungen mit jeweils einem einzelnen Projekt), weil es hilfreich ist, die Kernelfunktionen und Datenstrukturen beim Schreiben von Quelltext für den Treiber zu sehen. Beispielsweise können Kernelfunktionen und Variablen auto-expandiert werden, oder man kann Kernelfunktionsdokumentationen sehen, während man am Gerätetreiber programmiert.
Stellen Sie sich nun vor, Sie wären auch KDE-Entwickler. Dann hätten Sie eine zweite Sitzung, die auch KDE als Projekt enthielte. Sie könnten natürlich nur eine Sitzung für alle Projekte haben, aber es gibt keinen Grund dafür: während Sie an KDE arbeiten, brauchen Sie keinen Zugriff auf den Kernel oder auf den Gerätetreiber. Sie würden auch nicht wollen, dass KDE Klassen autovervollständigt werden, während Sie am Linux-Kernel arbeiten. Weiterhin ist das Kompilieren der KDE Bibliotheklen unabhängig vom rekompilieren des Linux-Kernels (während das rekompilierne des Linux-Kernels nach Änderungen am Gerätetreiber sinnvoll ist, falls Headerdateien sich verändert haben).
Außerdem gibt es noch eine andere Verwendung von Sitzungen: sofern man sowohl an der aktuellen Entwicklungsversion eines Projektes und an einem Branch arbeitet, will man nicht, dass KDevelop Klassen die zum Hauptzweig und Klassen die zum Branch gehören verwechselt. Deshalb benutzt man in diesem Fall zwei Sitzungen, die die selben Projekte aus verschiedenen Verzeichnissen enthalten (wobei die Verzeichnisse zu den Entwicklungszweigen korrespondieren).
Eine Sitzung einrichten und ein bestehendes Projekt importieren
Let's stick with the Linux kernel and device driver example — you may want to substitute your own set of libraries or projects for these two examples. To create a new session that contains these two projects go to the
menu at the top left (or, if this is the first time you use KDevelop: simply use the default session you get on first use, which is empty). We next want to populate this session with projects that for the moment we assume already exist somewhere (the case of starting projects from scratch is discussed elsewhere in this manual). For this, there are essentially two methods, depending on whether the project already is somewhere on your hard drive or whether it needs to be downloaded from a server.Option 1: Projekt aus einem Versionskontrollsystemserver importieren
Let's first assume that the project we want to set up -- the Linux kernel -- resides in some version control system on a server, but that you haven't checked it out to your local hard drive yet. In this case, go to the
menu to create the Linux kernel as a project inside the current session and then follow these steps:- Go to to import a project
- You then have multiple options to start a new project in the current session, depending on where the source files should come from: You can just point KDevelop at an existing directory (see option 2 below), or you can ask KDevelop to get the sources from a repository.
- Assuming you don't already have a version checked out:
- In the dialog box, under , choose to use , , or one of the other choices
- Choose a working directory as destination into which the sources should be checked out
- Choose an URL for the location of the repository where the source files can be obtained
- Hit
du -sk /path/to/KDevelop/project
to see how much data has already been downloaded. . This can take quite a long while; depending on the speed of your connection and the size of the project. Unfortunately, in KDevelop 4.2.x the progress bar does not actually show anything, but you can track progress by periodically looking at the output of the command line command
- It asks you to select a KDevelop project file in this directory. Since you probably don't have one yet, simply hit
- Hit again
- KDevelop will then ask you to choose a project manager. If this project uses standard Unix make files, choose the custom makefile project manager
- KDevelop will then start to parse the entire project. Again, it will take quite a while to go through all files and index classes etc. At the bottom right of the main window, there is a progress bar that shows how long this process has come along. (If you have several processor cores, you can accelerate this process by going to the menu item, then selecting on the left, and increasing the number of threads for background parsing on the right.)
Option 2: Importing a project that is already on your hard drive
Alternatively, if the project you want to work with already exists on your hard drive (for example, because you have downloaded it as a tar file from an FTP server, because you already checked out a version of the project from a version control system, or because it is your own project that exists only on your own hard drive), then use
and in the dialog box choose the directory in which your project resides.Eine Anwendung als ein zweites Projekt einrichten
The next thing you want to do is set up other projects in the same session. In the example above, you would want to add the device driver as the second project, which you can do using exactly the same steps.
If you have multiple applications or libraries, simply repeat the steps to add more and more projects to your session.
Projekte ganz neu erstellen
There is of course also the possibility that you want to start a new project from scratch. This can be done using the
menu item. The details of what options this offers to you are described elsewhere in this manual.