Ausgabe 05/2012 Als
Total Page:16
File Type:pdf, Size:1020Kb
freiesMagazin Mai 2012 Topthemen dieser Ausgabe Selbstgebacken 3: make Seite 3 Das Bauen eines Kernels und das Aktualisieren der Quellen ist keine große Zauberkunst und, sofern man keine besonderen Extras haben möchte, mit ein paar make-Kommandos recht schnell erledigt, wobei make den Löwenanteil der Arbeit verrichtet. Es bekommt gesagt, was man möchte, den Rest erledigt es dann von alleine. Der Artikel soll das Geheimnis von make etwas lüften. (weiterlesen) Kollaboratives Schreiben mit LATEX Seite 14 Ob im wissenschaftlichen oder privaten Bereich: Möchte man die volle Kontrolle über das Aus- sehen seiner erstellten Dokumente behalten, führt oft kein Weg an LATEX vorbei. Die Standard TEX-Distribution zeigt jedoch ein paar Restriktionen auf. Sowohl die Online-Verfügbarkeit des Dokuments von jedem Ort aus sowie der kollaborative Ansatz, dass mehrere Personen zeit- gleich an einem Dokument arbeiten können, ist mit den Standardmitteln der Desktopinstallation nicht zu erreichen. Die im Artikel vorgestellten Lösungen versuchen, die gewünschten Zusatz- funktionen bereitzustellen. (weiterlesen) Astah – Kurzvorstellung des UML-Programms Seite 23 Die Februar-Ausgabe von freiesMagazin enthielt einen kleinen Test diverser UML-Programme. Dabei wurde aber das UML- und Mindmap-Programm Astah übersehen. In dem Artikel soll gezeigt werden, ob das Programm mit den zuvor getesteten mithalten kann. (weiterlesen) © freiesMagazin CC-BY-SA 3.0 Ausgabe 05/2012 ISSN 1867-7991 MAGAZIN Editorial Fünfter Programmierwettbewerb be- Abschied Inhalt Linux allgemein endet Im April hieß es Abschied nehmen von einem Selbstgebacken 3: make S. 3 Der am 1. März 2012 gestartete fünfte langjährigen Teammitglied. Thorsten Schmidt, Der April im Kernelrückblick S. 8 freiesMagazin-Programmierwettbewerb [1] ging seit 2007 als Autor, danach als Korrektor und offiziell am 15. April 2012 zu Ende. Thema war letztendlich seit drei Jahren als Redaktionsmit- Anleitungen die Analyse eines Textes, das Zählen von Worten glied tätig, musste aus privaten und zeitlichen Objektorientierte Programmierung: Teil 3 S. 9 und die Ausgabe als Wortwolke. Die eingereich- Gründen das Team verlassen. Dokumentenmanagement mit LetoDMS – S. 12 ten Programme wurden auf Herz und Nieren Einrichten der Volltextsuche geprüft, sodass die Bewertung erst Anfang Mai Wir wollen Thorsten an dieser Stelle für seine vorlag [2]. langjährige Unterstützung danken und ihm für die Zukunft alles Gute wünschen. Software Es hatten sechs Programmierwillige ein Pro- Kollaboratives Schreiben mit LATEX S. 14 gramm eingereicht, wobei einer sein Programm Das Magazin existiert aber auch mit nur drei Re- Tine 2.0 – Installation und Konfiguration S. 19 während der Bewertungsphase zurückzog. Von daktionsmitgliedern weiter, auch wenn die Mai- Astah – Kurzvorstellung des UML- S. 23 den restlichen fünf Programmen waren leider ausgabe etwas dünner ist als die restlichen Aus- Programms drei etwas fehlerhaft, sodass wir keines von ih- gaben. Nach wie vor benötigen wir immer neue nen auf den dritten Platz setzen wollten. Daher Artikel, um das Magazin mit Inhalt zu füllen. Community gibt es nur zwei Gewinner. Rezension: PyQt und PySide S. 26 Wenn Sie also eine Idee zu einem Ar- Rezension: C++11 programmieren S. 28 Der Wettbewerb hat auch gezeigt, dass eine tikel haben, schreiben Sie uns unter Rezension: Java 7 – Mehr als eine Insel S. 31 Bewertung aufgrund von Eigenschaften wesent- . lich schwieriger ist als wenn am Ende des Wett- Magazin Ihre freiesMagazin-Redaktion bewerbs automatisch eine Punktzahl herausfällt, Editorial S. 2 die genau angibt, welche Platzierung ein Pro- LINKS Ende des fünften Programmierwettbe- S. 33 gramm erreicht. werbs [1] http://www.freiesmagazin.de/20120301-fuenfter- Leserbriefe S. 34 Das ist auch der Grund, wieso der nächste programmierwettbewerb-gestartet Veranstaltungen S. 36 Wettbewerb wieder ein spieltheoretisches Pro- [2] http://www.freiesmagazin.de/20120505- Vorschau S. 36 blem mit einer klaren Punktzahl am Ende ange- gewinner-des-fuenften-programmierwettbewerbs Konventionen S. 36 hen wird. Voraussichtlicher Start des sechsten freiesMagazin-Programmierwettbewerbs ist An- Impressum S. 37 fang Oktober. Das Editorial kommentieren © freiesMagazin CC-BY-SA 3.0 Ausgabe 05/20122 KERNEL Selbstgebacken 3: make von Mathias Menzer as Bauen eines Kernels und das Ak- Makefile und enthält die vom Entwickler vorgese- Angefangen von dem zentralen Makefile des tualisieren der Quellen ist keine große henen Anweisungen nebst den notwendigen Hin- Linux-Kernels, das im Wurzelverzeichnis des D Zauberkunst und, sofern man keine weisen für make, was zu tun ist. Quellcode-Verzeichnisbaums zu finden ist, arbei- besonderen Extras haben möchte, mit ein tet sich make entsprechend der Konfigurations- Mancher Kunde skandinavischer Möbelhäuser paar make-Kommandos recht schnell erle- datei .config durch den Baum der einzelnen würde sich darüber freuen, wenn ein „make digt, wobei make den Löwenanteil der Ar- Subsysteme und bindet dann entsprechend der Schrank Türen-Anschlag-Links“ den Beipackzet- beit verrichtet. Es bekommt gesagt, was man dort zu findenden Makefiles wiederum andere tel einlesen, das Zubehör auf Vollständigkeit prü- möchte, den Rest erledigt es dann von allei- Komponenten ein oder kompiliert sie, bis es sie fen, alles Relevante heraussuchen, die Anwei- ne. Der Artikel soll das Geheimnis von make zum Schluss im System ablegt und zum Beispiel sungen korrekt interpretieren und auch gleich etwas lüften. beim Bootloader registriert. den Aufbau vornehmen würde. Was ist make? Die verschiedenen Befehle, die make entgegen- Und auch schon bei der Erstellung der Konfigu- make ist ein Werkzeug zum Erstellen von Pro- nehmen kann, werden „Targets“ genannt. Wo- rationsdatei kann einem make behilflich sein und grammen aus dem Quelltext. Es gibt verschie- für Targets letztlich definiert werden, bleibt den spart dabei die Tipparbeit von bis zu 5000 Zeilen dene Implementierungen, zum Beispiel pmake Software-Entwicklern überlassen. Neben dem ei- Text. Mehr als viele andere Projekte ist der Linux- unter BSD und „GNU make“, das bei Linux zur gentlichen Kompilieren werden Targets auch für Kernel also auf make angewiesen. Anwendung kommt. GNU make entstammt dem das Konfigurieren (z. B. make config) oder das GNU-Projekt [1] und kommt zusammen mit der Aufräumen der Quellen nach einem Kompilie- Welche Targets gibt es? GNU Compiler Collection (gcc) und der GNU rungsvorgang (z. B. make clean) verwendet. Für den Linux-Kernel kennt make mehr als 60 C Library (glibc) beim Bau des Linux-Kernels Targets (Stand Linux 3.3). Nicht alle sind immer zum Einsatz. Unter anderem darauf stützt sich Wozu braucht der Linux-Kernel sinnvoll zu nutzen, da zum Beispiel auch Targets der Initiator des GNU-Projekts, Richard Stallman, make? für die Erstellung von RPM-Paketen mit dem fer- wenn er darauf besteht, dass die korrekte Be- Beim Linux-Kernel handelt es sich um ein kom- tig kompilierten Kernel bestehen, die auf einem zeichnung GNU/Linux sei [2]. plexes Miteinander von Bibliotheken, Komponen- Debian-System nur wenig Sinn ergeben. Den- ten und Modulen, die aufeinander aufbauen und noch ist ein Überblick über die gebräuchlichsten Kurz beschrieben funktioniert make so, dass es so ein verflochtenes Netzwerk aus Abhängigkei- Targets von Vorteil, wenn man mal von fertigen beim Aufruf ein Kommando erhält, was es tun ten erzeugen. Kernel-Rezepten abweichen möchte. soll. Da die Entwickler von make nun aber nicht jede Software und ihre speziellen Anforderungen Berücksichtigt man die Größe des Projekts, so Konfigurieren kennen können, haben Sie make als eine Art wird schnell klar, dass die Auflösung dieser Ab- Die meisten Targets dienen der Erstellung einer vollautomatische Werkzeugkiste aufgebaut, die hängigkeiten bei der Kernelkompilierung eine Le- gültigen .config-Datei. Die einfachste Varian- der zu kompilierenden Software dann quasi die bensaufgabe wäre, würde make einem nicht die- te, make config, fragt auf der Kommandozei- Aufbauanleitung entnimmt. Diese Anleitung heißt se Arbeit abnehmen. le jede mögliche Einstellung vom Anwender ab, © freiesMagazin CC-BY-SA 3.0 Ausgabe 05/20123 KERNEL menuconfig präsentiert sich aufgeräumt. Die Belegung der F-Tasten ist in nconfig immer sichtbar. wobei die Standard-Einstellung immer vorausge- tionsdatei, was Zeit und Arbeit spart, die man in Grenzen hält, man muss schon in etwa wissen, wählt ist und nur mit Enter bestätigt werden gegebenenfalls anschließend investieren muss. wo sich eine bestimmte Einstellung finden lässt, muss. Für die annähernd 5000 Abfragen sollte Hierzu wären grafische Werkzeuge hilfreich, wenn man auf langes Suchen verzichten möch- man allerdings viel Zeit mitbringen. die ebenfalls über verschiedene Targets auf- te. Apropos Suche: Beide Tools bieten eine Mög- gerufen werden können. Die einfachste Ver- lichkeit, nach Optionen zu suchen, was bisweilen Die Variante make oldconfig wurde in den vor- sion davon, die auch auf einem System ohne einiges an Zeit ersparen kann. angegangenen Teilen schon genutzt, sie über- grafische Benutzeroberfläche verwendet wer- nimmt eine bereits vorliegende .config-Datei den kann, sind die auf ncurses [3] basierenden Etwas übersichtlicher erscheinen dennoch make und legt dem Nutzer nur noch die dort nicht fest- make menuconfig und make nconfig (erfor- xconfig, das sich mit seiner QT-Oberfläche für gelegten Optionen zur Entscheidung vor. derliches Paket: ncurses-devel). Alle Einstell- KDE-Umgebungen anbietet (erforderliches Pa- make defconfig verzichtet dagegen ganz auf möglichkeiten für den Linux-Kernel