O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Eclipse für C/C++-Programmierer, 3rd Edition

Book Description

  • Einziges deutsches Buch für C/C++-Programmierer, die auf Eclipse arbeiten.+ Aktualisiert auf das Eclipse-Release vom Sommer 2015

Table of Contents

  1. Cover
  2. Titel
  3. Impressum
  4. Vorwort
  5. Teil I: Einstieg in Eclipse und CDT
    1. Kapitel 1: Installation
      1. 1.1 C- und C++-Compiler
      2. 1.2 Das richtige Eclipse-Archiv finden
      3. 1.3 Installation unter Linux
        1. 1.3.1 Compiler und Tools
        2. 1.3.2 Java
        3. 1.3.3 Eclipse
      4. 1.4 Installation unter Windows
        1. 1.4.1 Compiler und Tools
        2. 1.4.2 Java
        3. 1.4.3 Eclipse
      5. 1.5 Die Eclipse.ini-Datei
      6. 1.6 Willkommen
      7. 1.7 Eclipse erweitern
        1. 1.7.1 CDT nachträglich installieren
        2. 1.7.2 Update-Sites
        3. 1.7.3 Features verwalten
        4. 1.7.4 Die CDT-Features im Detail
        5. 1.7.5 Eclipse Marketplace
        6. 1.7.6 p2
    2. Kapitel 2: Erste Schritte
      1. 2.1 Konzepte des Eclipse-Frameworks
        1. 2.1.1 Workspace
        2. 2.1.2 Ressourcen
        3. 2.1.3 Eclipse-Workbench
        4. 2.1.4 Menüleiste
        5. 2.1.5 Werkzeugleiste
        6. 2.1.6 Statusleiste
        7. 2.1.7 Editoren und Views
        8. 2.1.8 Perspektiven
      2. 2.2 Das erste Projekt
        1. 2.2.1 Eclipse anpassen
        2. 2.2.2 Vorgehensweise
        3. 2.2.3 Ein neues Projekt anlegen
        4. 2.2.4 Die Quelldatei erzeugen
        5. 2.2.5 Übersetzen
        6. 2.2.6 Ausführen
        7. 2.2.7 Programmfehler aufspüren
        8. 2.2.8 Zusammenfassung und Ausblick
      3. 2.3 Das Eclipse-Hilfesystem
        1. 2.3.1 Dokumentationsaufbau
        2. 2.3.2 Hilfefenster
        3. 2.3.3 Kontextbezogene Hilfe
      4. 2.4 Eclipse über die Tastatur steuern
      5. 2.5 Nützliche Einstellungen
        1. 2.5.1 Voreinstellungsdialog
        2. 2.5.2 Hierarchie der Voreinstellungen
        3. 2.5.3 Allgemeine Workspace-Einstellungen
        4. 2.5.4 Workspace-Auswahl beim Starten und Beenden
        5. 2.5.5 Netzwerkeinstellungen
        6. 2.5.6 Einstellungen für SSH-Client
        7. 2.5.7 Passwortspeicher
        8. 2.5.8 Komponenten (de-)aktivieren
      6. 2.6 Die Benutzerschnittstelle anpassen
        1. 2.6.1 Werkzeug- und Menüleiste anpassen
        2. 2.6.2 Perspektiven verwalten
        3. 2.6.3 Tastatursteuerung anpassen
        4. 2.6.4 Erscheinungsbild
      7. 2.7 Verzeichnislayout auf dem Datenträger
        1. 2.7.1 Programmverzeichnis
        2. 2.7.2 Workspace
  6. Teil II: Entwicklung mit CDT
    1. Kapitel 3: Projekte erstellen und bearbeiten
      1. 3.1 Konzepte von CDT
        1. 3.1.1 Parser
        2. 3.1.2 Indexer
        3. 3.1.3 Piktogramme
        4. 3.1.4 Kurze Einführung in das Build-System
      2. 3.2 C- oder C++-Projekte erzeugen
        1. 3.2.1 Projekte anlegen
        2. 3.2.2 Dateien erzeugen
        3. 3.2.3 Verzeichnisse hinzufügen
        4. 3.2.4 Vorhandene Projekte importieren
        5. 3.2.5 Projekt entfernen
        6. 3.2.6 Projekttyp ändern
      3. 3.3 Eigenschaften von Ressourcen
      4. 3.4 Projekt: Dirscanner
        1. 3.4.1 Boost installieren
        2. 3.4.2 Dirscanner entwickeln
      5. 3.5 Quelltexte bearbeiten
        1. 3.5.1 Grundsätzlicher Aufbau eines Editorfeldes
        2. 3.5.2 Textpassagen markieren
        3. 3.5.3 Quelltext formatieren
        4. 3.5.4 Editierhilfen
        5. 3.5.5 Präsentation der Quelltexte
        6. 3.5.6 Annotationen
        7. 3.5.7 Code-Analyse
        8. 3.5.8 Navigation
        9. 3.5.9 Content-Assistenz
        10. 3.5.10 Makros untersuchen
        11. 3.5.11 Suchen und Ersetzen
        12. 3.5.12 Include-Direktiven organisieren
        13. 3.5.13 Setters und Getters erzeugen
        14. 3.5.14 Methode implementieren
        15. 3.5.15 Kommentare für externe Dokumentationswerkzeuge
        16. 3.5.16 Bookmarks
        17. 3.5.17 Makefile
        18. 3.5.18 Undo/Redo-Funktion
      6. 3.6 Dateienvergleich
        1. 3.6.1 Zwei Dateien vergleichen
        2. 3.6.2 Drei Dateien vergleichen
        3. 3.6.3 Lokale Historie
      7. 3.7 Working-Sets
        1. 3.7.1 Ein Working-Set erstellen
        2. 3.7.2 Working-Sets einschalten
        3. 3.7.3 Workbench-Working-Sets
      8. 3.8 Tasks
        1. 3.8.1 Tasks hinzufügen
        2. 3.8.2 Tasks mit Schlüsselwörtern
        3. 3.8.3 Tasks anzeigen lassen
      9. 3.9 Refactoring
        1. 3.9.1 Ressourcen umbenennen
        2. 3.9.2 Bezeichner umbenennen
        3. 3.9.3 Konstanten extrahieren
        4. 3.9.4 Lokale Variablen extrahieren
        5. 3.9.5 Eine Funktion oder Methode extrahieren
        6. 3.9.6 Funktionsdefinition umplatzieren
        7. 3.9.7 Methoden verstecken
        8. 3.9.8 Historie der Refactorings
      10. 3.10 Parser- und Indexerdetails
        1. 3.10.1 Parser
        2. 3.10.2 Indexeroptionen anpassen
        3. 3.10.3 Weitere Indexer-Parameter
        4. 3.10.4 Indexdatenbank analysieren
        5. 3.10.5 Probleme mit dem Indexer
      11. 3.11 Nützliche Views der C/C++-Perspektive
        1. 3.11.1 Outline
        2. 3.11.2 Include Browser
        3. 3.11.3 Call Hierarchy
        4. 3.11.4 Type Hierarchy
      12. 3.12 Navigations-Views
        1. 3.12.1 Navigator
        2. 3.12.2 C/C++ Project
        3. 3.12.3 Project Explorer
      13. 3.13 Ressourcen finden
      14. 3.14 Elemente finden
      15. 3.15 Suchen und Ersetzen
        1. 3.15.1 File Search
        2. 3.15.2 C/C++ Search
      16. 3.16 Eine Frage des Stils
        1. 3.16.1 Allgemeine Einstellungen
        2. 3.16.2 Quelltextformatierung
        3. 3.16.3 Quelltextschablonen
        4. 3.16.4 Namens- und Bezeichnerkonventionen
        5. 3.16.5 Include-Direktiven organisieren
      17. 3.17 Editorschablonen
      18. 3.18 Projektspezifische Metadateien
        1. 3.18.1 Metadateien im Projektverzeichnis
        2. 3.18.2 Metadateien im Workspace-Verzeichnis
    2. Kapitel 4: Der Build-Prozess
      1. 4.1 Builder
        1. 4.1.1 Die vier Modi eines Builders
        2. 4.1.2 Builder-Assoziationen
        3. 4.1.3 Builder-Konfiguration
        4. 4.1.4 Zwei Builder für C/C++-Projekte
      2. 4.2 Build-Variablen
        1. 4.2.1 Eigenschaften von Build-Variablen
        2. 4.2.2 Build-Variablen benutzen
        3. 4.2.3 Gültigkeitsbereich von Build-Variablen
        4. 4.2.4 Workspace-weite Build-Variablen definieren
        5. 4.2.5 Umgebungsvariablen als Build-Variablen
        6. 4.2.6 Dynamische Build-Variablen
      3. 4.3 Kontrolle über Managed Build
        1. 4.3.1 Konfigurationen verwalten
        2. 4.3.2 Quellverzeichnisse
        3. 4.3.3 Dateien vom Build-Prozess ausschließen
        4. 4.3.4 Custom Build
      4. 4.4 Einstellungen für C/C++-Projekte
        1. 4.4.1 C/C++ Build
        2. 4.4.2 Paths and Symbols
        3. 4.4.3 Preprocessor Include Paths, Macros
        4. 4.4.4 Environment
        5. 4.4.5 Logging
        6. 4.4.6 Settings
        7. 4.4.7 Tool Chain Editor
        8. 4.4.8 Build Variables
      5. 4.5 Einstellungen für Ressourcen
        1. 4.5.1 Settings
        2. 4.5.2 Tool Chain Editor
        3. 4.5.3 Path and Symbols
        4. 4.5.4 Preprocessor Include Paths, Macros
      6. 4.6 Makefile-Projekte
        1. 4.6.1 Der Make Targets-View
        2. 4.6.2 Make Targets hinzufügen
        3. 4.6.3 Make Targets aufrufen
        4. 4.6.4 Make Targets entfernen
        5. 4.6.5 Besonderheiten
      7. 4.7 Compiler-Ausgaben
        1. 4.7.1 Console
        2. 4.7.2 Voreinstellungen zur Build-Konsole
        3. 4.7.3 Wie CDT Kommandoausgaben verarbeitet
        4. 4.7.4 Error Parser festlegen
        5. 4.7.5 Übersetzungsfehler finden
        6. 4.7.6 Fehler filtern
      8. 4.8 Code-Generatoren verwenden
        1. 4.8.1 Beispiel: mathematische Ausdrücke auswerten
        2. 4.8.2 Bison installieren
        3. 4.8.3 Projekt erstellen und Quelltexte einpflegen
        4. 4.8.4 Einstellungen anpassen
        5. 4.8.5 Projekt übersetzen und ausführen
        6. 4.8.6 Als Projekt mit Makefile
        7. 4.8.7 Fazit
      9. 4.9 Cross-Compiling
        1. 4.9.1 Cross-Compiling für Make-Projekte
        2. 4.9.2 Cross-Compiling für Managed Build
        3. 4.9.3 Beispiel: AmigaOS4
        4. 4.9.4 Cross-Compiling-Plugin
      10. 4.10 Remote Compiling
        1. 4.10.1 Das Programm ssh einrichten
        2. 4.10.2 Das Dateisystem einrichten
        3. 4.10.3 Ein Remote-Build-Kommando erstellen
        4. 4.10.4 Remote Compiling in Eclipse anwenden
      11. 4.11 Microsoft Visual C++ einbinden
        1. 4.11.1 Visual C++ installieren
        2. 4.11.2 Das Projekt einrichten
        3. 4.11.3 Den Build-Prozess anpassen
    3. Kapitel 5: Ausführen und Debugging
      1. 5.1 Programmstartdialoge
        1. 5.1.1 Main
        2. 5.1.2 Arguments
        3. 5.1.3 Environment
        4. 5.1.4 Common
      2. 5.2 Doxygen einbinden
        1. 5.2.1 Konfigurationsdatei anlegen
        2. 5.2.2 Doxygen-Tool einrichten
        3. 5.2.3 Doxygen aufrufen
      3. 5.3 Die Launch-Konsole
      4. 5.4 Programme debuggen
        1. 5.4.1 Programme im Debug-Modus starten
        2. 5.4.2 Debug-Launcher
        3. 5.4.3 Debugger konfigurieren
        4. 5.4.4 Debug-Perspektive
        5. 5.4.5 Quelltexte lokalisieren
        6. 5.4.6 Der Debug-View
      5. 5.5 Den Programmablauf gezielt unterbrechen
        1. 5.5.1 Breakpoints-View
        2. 5.5.2 Zeilen-Breakpoints
        3. 5.5.3 Funktions-Breakpoints
        4. 5.5.4 Data-Breakpoints
        5. 5.5.5 Address-Breakpoints
        6. 5.5.6 Event-Breakpoints
        7. 5.5.7 Eigenschaften von Breakpoints
        8. 5.5.8 Dynamisches Printf
      6. 5.6 Nützliche Views beim Debuggen
        1. 5.6.1 Variables
        2. 5.6.2 Expressions
        3. 5.6.3 Register
        4. 5.6.4 Disassembly
        5. 5.6.5 Signale
        6. 5.6.6 Memory
        7. 5.6.7 Executables
        8. 5.6.8 OS Resources
      7. 5.7 Reverse Debugging
        1. 5.7.1 Reverse Debugging einschalten
        2. 5.7.2 Kontrollfluss steuern
        3. 5.7.3 Beispiel: Binäre Suche mit einem Vergleich
      8. 5.8 Unit Testing
        1. 5.8.1 Boost-Test-Library benutzen
        2. 5.8.2 Test starten
      9. 5.9 Auf entfernten Rechnern debuggen
      10. 5.10 Tracepoints
        1. 5.10.1 Tracepoints hinzufügen
        2. 5.10.2 Tracepoint-Aktionen
        3. 5.10.3 Traces auswerten
      11. 5.11 Launch Groups
  7. Teil III: Weitere nützliche Plugins
    1. Kapitel 6: Versionsverwaltung mit EGit
      1. 6.1 Grundlagen
        1. 6.1.1 Motivation
        2. 6.1.2 Begriffe
        3. 6.1.3 Konzepte von Git
      2. 6.2 EGit installieren
      3. 6.3 EGit konfigurieren
      4. 6.4 Die Perspektive Git
      5. 6.5 Bestehende Projekte mit Git assoziieren
      6. 6.6 Ein entferntes Repository klonen
      7. 6.7 Projekt in den Workspace importieren
      8. 6.8 Dekorationen
      9. 6.9 Mit Projekten unter Git arbeiten
      10. 6.10 Versionen vergleichen
      11. 6.11 Änderungsanzeige mit Git
      12. 6.12 Historie
      13. 6.13 Arbeiten mit Entwicklungszweigen
      14. 6.14 Rebase
      15. 6.15 Konflikte lösen
      16. 6.16 Stash
      17. 6.17 Weitere Informationen zu Git
    2. Kapitel 7: Mylyn
      1. 7.1 Mylyn installieren
      2. 7.2 Einführendes Beispiel
      3. 7.3 Konzepte
      4. 7.4 Task Connectors
        1. 7.4.1 Bugzilla
        2. 7.4.2 SourceForge
        3. 7.4.3 GitHub
      5. 7.5 Weitere Konnektoren
    3. Kapitel 8: Target Management
      1. 8.1 Target-Management-Plugin installieren
      2. 8.2 Konzepte
      3. 8.3 Die Perspektive Remote System Explorer
      4. 8.4 Der Remote Systems-View
      5. 8.5 Der Remote Monitor-View
      6. 8.6 Eine neue Verbindung anlegen
      7. 8.7 Die Verbindung aktivieren
      8. 8.8 Durch Ressourcen navigieren
      9. 8.9 Filter und Filterpools erzeugen
      10. 8.10 Profile verwalten
      11. 8.11 Ein Projekt auf den entfernten Rechner exportieren
      12. 8.12 Entfernte Projekte
      13. 8.13 DataStore
        1. 8.13.1 DataStore auf Linux einrichten
        2. 8.13.2 DataStore auf Windows einrichten
      14. 8.14 Den entfernten Rechner (fern-)steuern
        1. 8.14.1 Kommandos aufrufen
        2. 8.14.2 Terminals
      15. 8.15 Programme auf dem entfernten Rechner ausführen
        1. 8.15.1 Programme auf entfernten Rechnern starten
        2. 8.15.2 Beispiel: Cross-Development für Raspberry Pi
        3. 8.15.3 Projekt auf dem Pi über Eclipse debuggen
    4. Kapitel 9: Autotools
      1. 9.1 Autotools-Plugin installieren
      2. 9.2 Autotools-Projekt erzeugen
      3. 9.3 Editoren für Autotools-Dateien
      4. 9.4 Autotools-Projekte übersetzen
      5. 9.5 Autotools manuell aufrufen
      6. 9.6 Globale Voreinstellungen
      7. 9.7 Projekteinstellungen
    5. Kapitel 10: Linux-Tools
      1. 10.1 Linux-Tools installieren
      2. 10.2 Valgrind-Plugin
        1. 10.2.1 Hintergründe
        2. 10.2.2 Erste Schritte
      3. 10.3 Profiling-Kategorien
      4. 10.4 Andere Valgrind-Tools
        1. 10.4.1 Valgrind-Tools konfigurieren
        2. 10.4.2 Heap mit massif analysieren
        3. 10.4.3 Cache-Zugriffe mit cachegrind ermitteln
      5. 10.5 Profiling mit GProf
      6. 10.6 Docker Tooling
        1. 10.6.1 Verbindung zur Docker-Instanz einrichten
        2. 10.6.2 Docker-Images
        3. 10.6.3 Programm auf Docker-Container ausführen
      7. 10.7 Weitere Plugins
  8. Anhang
    1. Literaturverzeichnis
    2. Glossar
    3. Index
  9. Fußnoten