SNIFF+ Version 1.0.1


SNIFF+ ist eine offene Entwicklungsumgebung, die beliebige C- oder C++-Compiler und -Debugger unterstützt. Eine Gnu-C++-Compilerversion sowie ein Gnu-Debugger werden mitgeliefert.

Unter SNiFF+ ist es möglich, beliebig viele Projekte unabhängig voneinander zu verwalten. Dabei wird der aktuelle Abarbeitungszustand eines Projektes beim Beenden der Arbeit abgespeichert und bei erneutem Aufruf wieder hergestellt (bis hin zur Cursorposition in den Quelltexten).
Ein Projekt kann dabei auch in mehrere Teilprojekte zerlegt werden (z.B. Bibliotheken), wobei diese Teilprojekte wieder völlig selbstständige Einheiten darstellen.

Es werden folgende Werkzeuge von SNiFF+ zur Verfügung gestellt:

Hierarchy Browser:
Werkzeug zur graphischen Veranschaulichung von Klassenbeziehungen

Project Editor:
Werkzeug zur Verwaltung des aktuellen Projektes; dient zum Beispiel dazu, dem Projekt neue Sourcefiles oder Subprojekte zuzuordnen und Projekteigenschaften (z.B. globales Ziel des Makefiles) zu definieren

Retriever:
Werkzeug zum Durchsuchen der Sourcefiles nach bestimmten Ausdrücken; dabei sind auch Sucheinschränkungen, wie z.B. Stellen an denen der zu findende Ausdruck definiert oder verglichen wird bzw. einen Wert zugewiesen bekommt, erlaubt; die Suche kann in allen Teilprojekten erfolgen, aber auch auf bestimmte Teile beschränkt werden

Symbol Browser:
zeigt im Projekt vorkommende Symbole (Klassennamen, Konstanten, Variablen, Typen, Funktionen, Makros usw. an

Source Editor:
neben den normalen Editierfunktionen wird z.B. eine Klammerprüfung angeboten; weitere Möglichkeiten ergeben sich im Zusammenspiel mit den anderen Werkzeugen; so ist es möglich, vom Symbol Browser aus, durch Doppelklick auf eines der Symbole an die entsprechende Stelle im Quelltext zu gelangen, auf ähnliche Weise kann man Suchergebnisse, Fehler bei der Übersetzung oder im Hierarchy Browser angezeigte Klassen im Quelltext auffinden; andererseits ist es auch möglich, sich zu Symbolen, die aktuell im Editor angezeigt werden, weitere Informationen über den Retriever zu beschaffen, bzw. die aktuelle Anzeige des Hierarchy Browsers zu beeinflussen; vom Editor aus wird ebenfalls die Übersetzung gestartet und er dient als Schnittstelle zum Debugger

Debugger:
als Debugger wird z.B. der GDB Debugger genutzt; der Editor dient als Schnittstelle, so daß ohne weitere Vorkenntnisse z.B. Breakpoints gesetzt oder die Werte von Variablen abgefragt werden können.

Das System ist auch ohne eine erfolgreiche Compilierung der Sourcen schon voll einsatzfähig, da SNiFF+ selbst die Sourcen untersucht und dazu keine von einem Compiler erzeugten Symboltabellen o.ä. benötigt.

Ein großer Vorteil von SNIFF+ z.B. gegenüber SPARCworks liegt in der Unabhängigkeit von verwendeten Compilern und Debuggern.

Diese Software steht auf folgenden Plattformen zur Verfügung:

SNIFF+ liegt als Campuslizenz vor und kann innerhalb der Universität kostenlos (für nichtkommerzielle Zwecke) genutzt werden.

Gestartet wird das Entwicklungssystem (wenn /uni/global/bin im Pfad eingetragen ist) über

sniff

Ein Teil dieser Softwarelizenz ist ein Beispielprogramm (ein Filebrowser), der durch

sniff_copy_example

in das HOME-Directory des jeweiligen Nutzers kopiert wird. (Beispiel unter Solaris 2.2 z.Z. nicht übersetzbar)

Weitere Informationen können der SNIFF-Dokumentation entnommen werden. Diese steht unter /uni/global/doc/SNIFF+-1.0.1 in Postscriptformat zur Verfügung.

Ansprechpartner:
Jens Wagner, Gruppe Anwendungen