Einfuehrende Bemerkungen des Uebersetzers. ------------------------------------------ 1.: Dies ist eine Uebersetzung der englischen README.1st Datei ins Deutsche. Das englische Original ist *IMMER* die bindende Referenz, waehrend diese Uebersetzung nur als Erleichterung fuer den DJGPP Anfaenger gedacht ist. Es wurde groesst moegliche Sorgfalt walten gelassen, nichts desto trotz koennen sich Fehler eingeschlichen haben. Das bedeutet, dass im Zweifels- fall *IMMER* das englische Original, die endgueltige Instanz darstellt und dem entsprechend zu konsultieren ist. 2.: Diese Uebersetzung soll dem Anfaenger die Installation und die ersten Schritte mit DJGPP erleichtern. Weder dieses Dokument, noch das englische Original, kann und will ein Ersatz fuer die grosse Anzahl von englischen online manuals (Handbuechern), welche mit den verschiedenen Paketen aus- geliefert werden, sein. Es liegt in der Natur von README Dateien, dass die vermittelte Information oberflaechlich bleiben muss. Jedem Benutzer, der ernsthaft mit DJGPP arbeiten will, wird das lesen der verschiedenen online Handbuecher, insbesondere von gcc.info, libc.info und djgppfaq.info **WAERMSTENS** empfohlen. 3.: Wie mein Name vermuten laest, ist Deutsch nicht meine Muttersprache. Ich bitte also schon im voraus um Entschuldigung fuer die sicherlich zahlreich vorhandenen Rechtschreibfehler. Sollten sich allzu grobe Fehler eingeschlichen haben oder gravierende Abweichungen bei der Uebersetzung aufgetreten sein, dann wird jeder Verbesserungsvorschlag dankend angenom- men. Es sei dabei jedoch beachtet, dass dieses Dokument eine Uebersetzung ist und nicht mehr. D.h., es werden keine Anderungsvorschlaege akzeptiert werden, die daraus hinaus laufen, Informationen zu uebernehmen, welche nicht auch im Original enthalten sind. 4.: Last but not least, Dank geht an Kai Müller fuer die Korrektur zahlreicher Rechtschreibfehler in der alten Version dieser Datei. MfG, Guerrero, Juan Manuel st001906@hrz1.hrz.tu-darmstadt.de ###### # ##### ###### ###### # # # # # # # # # # # # # # # # # # # # # #### ###### ###### # # # # # # # # # # # # # # # # ###### ##### ##### # # DJ Delorie Dies ist eine deutsche Uebersetzung der englischen README.1ST Datei fuer DJGPP Version 2.03 ***************************************************************************** * Diese Datei beinhaltet Informationen ueber die Beschaffung, Intallation * * und den Gebrauch von DJGPP. Bitte lesen Sie sie vollstaendig durch, * * bevor Sie um Hilfe nachfragen. * ***************************************************************************** DJGPP ist eine nicht proprietaere Entwicklungsumgebung zum Schreiben von 32-bit protected mode Software in C/C++ unter MS-DOS. Die DJGPP home page im WWW ist: http://www.delorie.com/djgpp/ Status- und andere Informationen (online docs, FAQ, email Archive) werden durch die DJGPP Web Seiten zugaenglich gemacht. Diskussionen betreffend DJGPP und Fragen ueber seinen Gebrauch oder Eigenschaften werden in der DJGPP News Gruppe (emails an comp.os.msdos.djgpp senden) und in der DJGPP Mailing Liste (emails an senden, einschreiben in die Liste ueber ) gefuehrt und behandelt. Auf den Web Seiten finden sich Informationen ueber die aktuellen Versionen der verschiedenen DJGPP Pakete. Die Versionsinformation zu jedem zip-Archiv befindet sich in der manifest/*.ver Datei. Eine Liste der im zip-Archive enthaltenen Dateien befindet sich in der manifest/*.mft Datei. Es gibt auch andere (und moeglicherweise bessere) Einfuehrungen ueber Beschaf- fung, Installation und den Gebrauch von DJGPP im WWW. Siehe: http://www.delorie.com/djgpp/doc/ DIE DISTRIBUTION. ***************** Die DJGPP Distribution ist, entsprechend den Inhalten der zip-Archive, in eine Reihe von Unterverzeichnissen unterteilt. Jedes Unterverzeichnis enthaelt eine Datei namens 00_index.txt, welche eine Beschreibung aller Dateien in diesem Verzeichnis enthaelt. Die mit einem `b' endenden zip-Archive beinhalten die ausfuehrbaren Dateien (auch bekannt als binaries oder Programme) und die dazu gehoerige online Doku- mentation. Zum Zeitpunkt des Schreibens dieser Datei gibt es in den verschiede- nen Verzeichnissen (gekennzeichnet durch ein `/' am Ende des Verzeichnisnames), die folgenden Pakete (zip-Archive) und Dateien: FAQ Eine kurze Textdatei, welche Hinweise auf andere Dokumente enthaelt, die gelesen werden sollten, einschliesslich der vollstaendigen FAQ Liste. v2/ unzip32 Ein freies unzip-Programm zum Entpacken der zip-Archive, aehnlich dem PKUNZIP Programm. djdev203 DJGPP V2 Entwicklungswerkzeuge und Laufzeitbibliothek. djlsr203 DJGPP V2 Quellen der Entwicklungswerkzeuge und Laufzeitbibliothek. djtst203 DJGPP V2 Testprogramme (zum Testen der C-Bibliothek). djcrx203 DJGPP V2 Zusaetzliche Dateien fuer den Cross-nach-DOS Compiler (von djlsr/djdev). djtzn203 DJGPP V2 Zeitzonen Dateien. djtzs203 DJGPP V2 Quellen der Zeitzonen Dateien. faq*b Die vollstaendige FAQ Liste in verschiedenen Formaten (Info, ASCII, PS, HTML...). faq*s Die Texinfo Quellen zu der FAQ Liste und die notwendigen Werkzeuge zur Erzeugung der FAQ Liste in den verschidenen Formaten. frfaq* DJGPP FAQ en Francais. v2apps/ (Verschiedene Anwendungen geschrieben fuer und mit DJGPP, wie beispielsweise RHIDE und TeX.) v2gnu/ (DJGPP Ports von verschiedenen FSF/GNU Programmen, wie beispielsweise gcc und binutils.) v2tk/ (Verschiedene toolkits zum Gebrauch mit DJGPP, wie beispielsweise Allegro und libsocket.) v2misc/ csdpmi* CWSDPMI, Charles Sandmann's freier DPMI Server mit Quellen und docs. mlp* ML's Executable File Packer Programm mit Quellen ("djp") pmode* PMODE stub fuer djgpp V2 wmemu* WM's alternativer 387 Emulator fuer DJGPP V2 (und verschiedene andere Sachen zum Gebrauch mit DJGPP). STARTEN. ******** Die Informationen, die hier angegeben werden, sind das mindeste was jeder neue Benutzer unbedingt wissen sollte um DJGPP erfolgreich zu installieren und zum laufen zu bringen. Bitte nehmen Sie sich die Zeit, die verschiedenen DJGPP on- line Handbuecher und die FAQ Liste zu lesen. Allen DJGPP Anfaenger wird *WAERMSTENS* empfohlen die FAQ Liste vollstaendig durchzulesen. Was soll man herunterladen ? ---------------------------- Unter http://www.delorie.com/djgpp/zip-picker.html findet man eine Web Seite mit einer Formular - aehnlichen Anleitung/Oberflaeche mit deren Hilfe man die Pakete ermitteln kann, welche man herunterladen sollte, je nach dem, fuer was man plant DJGPP einzusetzen. Im allgemeinen gilt, dass man nur Programmpakete (binaries) herunterzuladen braucht; die meisten Leute werden die Quelltexte zu den einzelnen Programmen nicht brauchen. Um C Programme zu compilieren, brauchen Sie djdev203.zip, gcc*b.zip, und bnu*b.zip. Fuer C++, brauchen Sie auch noch gpp*b.zip. Der Stern in den Paket- namen steht stellvertretend fuer die aktuelle Versionsnummer des Paketes. Um die online Handbuecher, welche mit so gut wie jedem Programmpaket kommen, lesen zu koennen, brauchen Sie txi*b.zip. Zum lesen der Handbuecher starten Sie das Programm `info'. Falls Sie keinen DPMI Server installiert haben, brauchen Sie zusaetzlich das csdpmi*b.zip Paket. (Windows, QDPMI, 386Max, NWDOS, Win/NT, OS/2, OpenDOS und Linux DOSEmu bieten alle DPMI Dienste, so dass Sie CWSDPMI in diesen Umgebungen nicht brauchen.) Fuer weitere Details, laden Sie faq*b.zip herunter (die vollstaendige FAQ Liste) und lesen Sie aufmerksam Kapitel 4: "Where and What to Download". Installation. ------------- 1. Machen Sie ein Verzeichnis in welches Sie DJGPP installieren wollen, sagen wir: C:\DJGPP. ACHTUNG: Installieren Sie DJGPP auf *KEINEN* Fall in ein Verzeichnis, dass X:\DEV (X steht fuer einen beliebigen Laufwerksbuchstaben) heisst oder in ein Unterverzeichnis von X:\DEV. DJGPP wird einfach nicht funktionieren wenn Sie es tun! Fuer weitere Details lesen Sie bitte in der FAQ Liste nach. Falls Sie noch die Version 1.x von DJGPP installiert haben sollten, ist es das beste den Inhalt von dem "bin/" Verzeichnis zu loeschen oder in ein anders Verzeichnis, dass nicht in Ihrer PATH Umgebungsvariablen angegeben ist, zu kopieren, und den Rest der 1.x Installation KOMPLETT zu loeschen. (Viele der Probleme, die Benutzer mit DJGPP v2 gehabt haben, kamen durch die unbemerkte Mischung von v1.x mit v2.x Programmen im "bin/" Verzeichnis zu- stande). Das Einzige v1.x Programm, dass Sie in dem "bin/" Verzeichnis be- halten sollten, falls Sie ueberhaupt eine v1.x Installation gehabt haben sollten, ist "go32.exe". 2. Kopieren Sie alle Pakete nach C:\DJGPP und entpacken Sie sie. Achten Sie *UNBEDINNGT* darauf, dass die Verzeichnisstruktur erhalten bleibt. Zum Beispiel, um djdev203.zip zu entpacken geben Sie das Kommando: pkunzip -d djdev203 oder unzip32 djdev203 ein. Wenn Sie in einem DOS Fenster unter Windows 9X arbeiten, muessen Sie ein unzip Programm verwenden, welches die Erzeugung von langen Dateinamen unter- stuetzt. Die neuesten Versionen von InfoZip's UnZip und PKUnzip, wie auch WinZip unterstuetzen alle lange Dateinamen. unzip32.exe, erhaeltlich von den DJGPP sites, unterstuetzt auch die Erzeugung langer Dateinamen. Eine Methode um fest zu stellen ob beim entpacken des zip-Archives die langen Dateinamen erhalten geblieben sind, ist nach der Datei "include/sys/sysmacros.h" zu suchen (d.h.: C:\DJGPP\INCLUDE\SYS\SYSMACROS.H). Falls Sie im "sys/" Unter- verzeichnis statt "sysmacros.h" nur "sysmacro.h" (es fehlt das letzte "s" im Dateinamen) finden dann unterstuetzt das von Ihnen verwendete unzip Programm keine langen Dateinamen. In diesem Fall ist die *GESAMTE* Installation hin- faellig. Loeschen Sie *ALLES* mit Ausnahme der zip-Archive aus dem "C:\DJGPP" Verzeichnis, besorgen Sie sich ein unzip Programm, dass lange Dateinamen unterstuetzt und wiederholen Sie die gesamte Prozedur. 3. Nach dem entpacken aller zip-Archive, setzen Sie die DJGPP Umgebungsvariable derart, dass sie auf die DJGPP.ENV Datei zeigt, welche sich im Hauptinstall- ationsverzeichnis (C:\DJGPP) befindet, und fuegen Sie das "bin/" Unterver- zeichnis (C:\DJGPP\BIN) zur PATH Umgebungsvariablen hinzu. Die genaue Art und Weise wie zu Verfahren ist um diese Umgebungsvariablen zu setzen haengt von Ihrem Betriebssystem ab: * Fuer Windows 98 Systeme: - Klicken Sie auf START. - Waehlen Sie Programme->Zubehoer->Systemprogramme->Systeminformationen. - Klicken Sie auf "Extras" in der Menueleiste, dann waehlen Sie "Systemkonfigurationsprogramm" aus dem pull-down Menue. - Benutzen Sie die Registerkarte zum editiern Ihrer AUTOEXEC.BAT wie weiter unten erklaert. * Fuer Windows NT Systeme: - Klicken Sie mit der rechten Maustaste auf "Arbeitsplatz", klicken Sie dann auf den Menuepunkt "Eigenschaften". - Klicken Sie auf die Registerkarte "Umgebung". - Editieren Sie die PATH Umgebungsvariable um das DJGPP "bin/" Unterver- zeichnis hinzu zu fuegen. - Erzeugen Sie die neue Umgebungsvariable "DJGPP" und setzten Sie ihren Wert auf den vollstaendigen Pfadnamen der DJGPP.ENV Datei, wie weiter unten erklaert wird. * Fuer alle anderen Systeme (DOS, Windows 3.X und Windows 95): - Starten Sie einen beliebingen Texteditor, z.B.: EDIT und editieren Sie die AUTOEXEC.BAT Datei, die sich im Wurzelverzeichnis der boot-Platte befindet (ueblicherweise, C:). Gleichgueltig welche Methode Sie verwenden, unter der Annahme, dass Sie DJGPP in das Verzeichnis "C:\DJGPP" installiert haben, sollten die zwei Umgebungsvariablen folgendermassen gesetzt worden sein: set DJGPP=C:\DJGPP\DJGPP.ENV set PATH=C:\DJGPP\BIN;%PATH% 4. Starten Sie ihren Computer neu. Dies stellt sicher, dass die beiden Zeilen, welche der AUTOEXEC.BAT hinzugefuegt worden sind, wirksam werden. (Unter Windows NT werden die Aenderungen sofort wirksam, so dass kein Neustart erforderlich ist.) 5. Fuehren Sie das "go32.exe" Programm ohne Argumente aus: go32-v2 Es sollte anzeigen wieviel DPMI Speicher und "swap space" DJGPP auf Ihrem System verwenden kann. Beispiel: DPMI memory available: 8020 Kb DPMI swap space available: 39413 Kb Die Angaben werden natuerlich variieren in Abhaengigkeit von der Menge an RAM, dass auf Ihrem System installiert ist, dem freien Speicherplatz auf der Festplatte fuer die swap-Datei und dem verwendeten DPMI Server. Falls die Summen der beiden oben ermittelten Zahlen kleiner als 4 MB ist, lesen Sie Abschnitt 3.9 der FAQ: "How to configure your system for DJGPP". (Falls Sie mehr Resourcen als 4 MB zur Verfuegung haben und die optimale Leistung fuer Ihr System erzielen moechten, sollten Sie den Abschnitt auf jeden Fall lesen.) Compilierung. ------------- GCC ist ein Kommandozeilen Compiler, welcher von der DOS-Eingabeaufforderung aus aufgerufen wird. Zum Compilieren und Linken eines C Programms bestehend aus einer einzigen Quelldatei verwenden Sie folgendes Kommando: gcc myfile.c -o myfile.exe -lm Natuerlich ist der Name "myfile" willkuerlich und muss durch den korrekten Namen der Quelltextdatei ersetzt werden. Das " -lm" linkt die mathematische Bibliothek (lib/libm.a), falls erforderlich, hinzu. (Die Reihenfolge in der die Bibliotheken hinzu gelinkt werden ist von Bedeutung, deshalb muessen Sie " -lm" immer als letztes Argument in der Kommandozeile angeben.) Verwenden Sie folgendes Kommando um eine C oder C++ Quelltextdatei in eine Objektdatei zu compilieren: gcc -c -Wall myfile.c (fuer C Quellen) oder gcc -c -Wall myfile.cc (fuer C++ Quellen) Dies erzeugt die Objektdatei "myfile.o". Die " -Wall" Option aktiviert die Ausgabe aller Warnungen, die der Compiler waehrend der Compilierung erzeugt. Das ist besonders fuer GCC Anfaenger ausserst nuetzlich. (Andere C++ Erweiter- ungen, wie .cpp, werden auch vom Compiler unterstuetzt. Siehe Abschnitt 8.4 der FAQ Liste, "How does GCC recognize the source language", fuer weiter Details.) Um mehrere C Objectdateien zu einer ausfuehrbaren Datei zusammen zu linken verwenden Sie das folgende Kommando: gcc -o myprog.exe mymain.o mysub1.o mysub2.o Dies erzeugt das Programm "myprog.exe", welches von der DOS-Eingabeaufforderung aus ausgefuehrt werden kann. Um ein C++ Programm zu linken benutzen Sie gxx statt gcc, wie in diesem Beispiel gezeigt: gxx -o myprog.exe mymain.o mysub1.o mysub2.o Die Verwendung von gxx statt gcc hat den Vorteil, dass beim linken, automatisch nach den C++ Bibliotheken gesucht wird und diese nicht mehr explizit in der Kommandozeile angegeben werden muessen. Sie koennen auch die Compilierung und Link-Phase zu einem Schritt zusammen fassen, wie im folgenden Kommando gezeigt: gcc -Wall -o myprog.exe mymain.c mysub1.c mysub2.c Weitere Informationen ueber die ausgesprochen grosse Anzahl von GCC Optionen koennen in der online Dokumentation gefunden werden. Um diese sich zugaenglich zu machen muessen Sie erst das Texinfo Paket installieren (txi*b.zip, weitere Informationen unter "online docs" weiter unten) und folgendes Kommando eingeben: info gcc invoking Entwicklungsumgebung (aka IDE). ------------------------------- Momentan besitzt DJGPP keine eigene Entwicklungsumgebung. Es steht Ihnen frei jeden beliebigen Texteditor zu waehlen, der in der Lage ist DOS Programme zu starten und ihre Bildschirmausgabe anzuzeigen. Viele Leute, die mit DJGPP arbeiten, benutzen den DOS Port von GNU Emacs (ist erhaeltlich im dem "v2gnu" Unterverzeichnis), der selbst wiederum mit DJGPP compiliert werden kann. Emacs ist ein sehr leistungstarker Editor (beispielsweise hat er ein integrier- ten "info reader" mit dem Sie die DJGPP Dokumentation lesen koennen ohne den Editor verlassen zu muessen). Nichts destso trotz koennen Sie jeden anderen freien Editor genau so gut als IDE verwenden. Die einzige Aufgabe, die keiner der Editoren (auch Emacs nicht) zu leisten im Stande ist, ist die Ausfuehrung eines Debuggers. Eine DJGPP spezifische IDE namens RHIDE wurde kuerzlich veroeffentlicht und ist jetzt fuer alle DJGPP Benutzer erhaeltlich. Die IDE weist eine der Turbo C IDE aehnliche Oberflache, auto-indentation, farbliche Sytaxherforhebung, automati- scher Aufruf des DJGPP Compilers, automatische Makefile Erzeugung und einfacher Zugriff auf die DJGPP online Dokumentation. RHIDE weist auch einen integrierten Debugger auf, welcher auch ohne die IDE verwendet werden kann. Dieser Debugger bietet dieselbe Funktionalitaet wie der GNU Debugger (gdb). Da RHIDE brandneu ist, werden des oefteren bugfixes veroeffentlicht. Besuchen Sie http://www.tu-chemnitz.de/~sho/rho/rhide.html fuer die aktuellsten Informationen und updates. Debuggen. --------- Um ein Programm zu debuggen, muss dieses erst mit der "-g" Option compiliert werden: gcc -c -Wall -g mymain.c gcc -c -Wall -g mysub1.c gcc -c -Wall -g mysub2.c und anschliessend auch mit der "-g" Option gelinkt werden: gcc -g -o myprog.exe mymain.o mysub1.o mysub2.o (Bitte beachten Sie, dass ab v2.01 von DJGPP, es nicht laenger noetig ist eine rohe COFF Datei (raw COFF image) statt einer ausfuehrbarer Datei (.exe Datei) zum debuggen zu verwenden. Die Debugger, die mit v2.01 und spaeteren Versionen ausgeliefert wurden, koennen ohne weiteres sowohl COFF Dateien als auch .exe Dateien lesen. Falls Sie nicht verstehen wovon hier die Rede ist, koennen Sie das hier gesagte getrost ignorieren.) Fuehren Sie dann Ihr Programm unter Debugger-Kontrolle aus: fsdb myprog.exe oder gdb myprog.exe oder edebug32 myprog.exe (Sie muessen das gdb*b.zip Paket herunterladen, wenn Sie mit GDB debuggen wollen). FSDB hat eine Hilfe-Seite; druecken Sie F1 um sie aufzurufen. GDB kommt mit Info docs (siehe unten), die mit info.exe gelese werden koennen. Edebug32 is ein weiterer aber selten genutzter Debugger; tippen Sie "h" um Hil- fe zu bekommen. Online Dokumentation. --------------------- Der groesste Teil der online Dokumentation kommt in einem speziellen hypertext Format, welches von GNU Projekt verwendet wird. Jedes Paket kommt mit seiner eigenen Dokumentation in Form von Dateien, welche die ".iNN" Erweiterung auf- weisen, wobei N fuer eine Ziffer zwischen 1 und 9 steht. Diese Dateien werden innerhalb des DJGPP Installalationsbaumes in das "info/" Unterverzeichnis ent- packt. Um diese Dateien zu betrachten, muessen Sie das txi*b.zip Paket install- ieren und das "info.exe" Programm ausfuehren. Falls Sie nicht wiessen, wie das Programm zu bedienen ist, lesen Sie den naechsten Abschnitt. Lesen der Dokumentation, oder Ein Crash-Kurs in Info. ----------------------------------------------------- Der hier folgende Text ist nicht als eine vollstaendige Bedinugsanweisung fuer Info gedacht, soendern als eine kurze und nuetzliche Einfuehrung wie man Info benutzt, um in Dokumenmten zu navigieren und schnell und effizient nach einem ein besonders interessierenden Abschnitten sucht. Zum aufrufen von Info um ein Handbuch zu lesen, tippen Sie "info" gefolgt von dem Namen des Handbuches. Zum Beispiel: - Tippen Sie "info libc" um die C Bibliotheksdokumentation zu lesen. - Tippen Sie "info libc alphabetical printf" um die Dokumentation ueber die C Bibliotheksfunktion "printf" zu lesen. - Tippen Sie "info gcc" um die Dokumentation des GNU C Compilers (GCC) zu lesen. - Tippen Sie "info faq" um die DJGPP FAQ Liste zu lesen. - Tippen Sie "info make" um die Dokumentation des Make Programmes zu lesen. - Tippen Sie "info" um ein Menu mit alle vorhandenen Handbuechern zu erhal- ten. Um Info zu beenden, tippen Sie `q' (fuer quit). Einmal in Info, koennen Sie durch die Menues und Dokumente mit Hilfe der Cursor Tasten: Pfeil-hoch, Pfeil-runter, Bild-hoch, Bild-runter, etc. navigieren. Um ein beliebiges Handbuch vom Anfang bis zum Ende vollstaendig zu durchlaufen, brauchen Sie nur die LEER-Taste zu druecken jedes mal wenn Sie am Ende einer Bildschirmseite angelangt sind. Dies bringt Sie durch das ganze Handbuch, von Kapitel zu Kapitel und von Unterkapitel zu Unterkapitel, in der richtigen Reihenfolge, ohne das etwas uebersprungen oder ausgelassen wird. Menues werden eingeleitet durch eine Zeile, welche mit "* Menu:" beginnt. Jede Zeile unter dieser Menuezeile, die wiederum mit einem Sternchen "*" beginnt ist ein Menupunkt oder Menueitem. Um einen Menueitem auszuwaehlen, bewegen Sie den Cursor genau unter das Sternchen und druecken Sie die Eingabetaste. Hypertext-Verweise oder links werden durch "* Note" gekennzeichnet. Um diesem Verweis zu folgen, plazieren Sie den Cursor wieder genau unter das Sternchen und druecken Sie die Eingabetaste. Um wieder zur Ausgangsposition zurueck zukehren, druecken Sie die l-Taste (klein ell, nicht die Ziffer 1), `l' fuer "last" oder "letzt". Um schnell nach einem bestimmten Thema in dem Index eines Handbuches zu suchen, druecken Sie `i' (fuer Index), tippen Sie den Namen des Themas und druecken Sie anschliesend die Eingabetaste. Sie koennen auch nur ein Teil des Themennamens eintippen und dann die Tabulatortaste druecken. So koennen Sie schnell ueber- pruefen ob der Handbuchindex ueberhaupt einen Eintrag enthaelt, der mit dem was Sie eingetippt haben beginnt. Das druecken der Tabulatortaste veranlasst naem- lich Info dazu, dass was Sie getippt haben mit den existierenden Indexeintrae- gen zu vervollstaendigen. Falls Info waehrend Sie die Tabulatortaste druecken, beept oder der Bildschirm blinkt bedeutet das, dass es keine Indexeintraege gibt, die mit dem beginnen was Sie eingetippt haben. In diesem Fall loeschen Sie Ihre Eingabe in dem Sie die BACKSPACE-Taste verwenden und versuchen Sie ein anderes Wort mit dem das Thema umschrieben wird nach dem Sie suchen. Falls es mehrere Eintraege gibt, die mit dem Wort beginnen, dass Sie eingetippt haben, wird Info das Wort entsprechend komplettieren jedesmal wenn Sie die Tabulator- taste druecken. Falls der vervollstaendigte Eintrag dem entspricht was Sie suchen, dann druecken Sie die Eingabetaste um zu dem entsprechenden Abschnitt zu gelangen; falls nicht, dann druecken Sie die Tabulatortaste weiter um alle moeglichen Vervollstaendigungen des von Ihnen eingetippten Themenwortes durchzu- spielen. Falls keiner der von Info vorgeschlagenen Wortvervollstaendigungen mit Ihrem Thema uebereinstimmt, dann benutzen Sie die BACKSPACE-Taste um Ihre Eingabe vollstaendig zu loeschen und versuchen es mit einem anderen themenbezo- genen Wort. Zum Beispiel, nehmen wir an, Sie haetten die unruehmlich bekannte Fehlermeldung "ld.exe: cannot open -lstdcxx: No such file or directory" erhalten und moechten nun in Erfahrung bringen, was Die FAQ-Liste darueber zu sagen hat. Sie starten Info ("info faq"), dann tippen Sie `i' (fuer "index") und tippen: "can TAB". Das erste druecken der Tabulatortaste (TAB) wandelt "can" in "Can" um. Daraus erkennen Sie, dass der Index ein Paar Eintraege ent- haelt, die mit "Can" beginnen. Weiteres druecken der Tabulatortaste erzeugt eine Liste potentieller Vervollstaendigungen. Da keines der angebotenen Index- eintraege das Thema betrifft, loeschen Sie das Wort "Can" mit der BACKSPACE- Taste und tippen "-lstdc" gefolgt von TAB ein. Fuer dieses Wort gibt es nur einen Indexeintrag den Info Ihnen praesentieren kann und diesmal ist es genau der, den Sie suchen. Nun koennen Sie die Eingabetaste druecken und Sie gelangen zum entsprechenden FAQ Knoten ueber dieses Thema. Falls Sie lieber selber nach einem Themenkomplex in dem Index suchen, dann muessen Sie ins Hauptmenue bzw. Hauptinhaltsverzeichnis des Handbuches wechseln in dem Sie wiederholte Male die u-Taste (fuer `up') druecken. Das Hauptmenue erkennen Sie daran, dass es im allgemeinen einen Menueeintrag hat, der wie: "* Concept Index" oder "* Command Index" oder "* Program Index" oder einfach "* Index" lautet. Um in den Index zu gelangen, positionieren Sie den Cursor unter dem Sternchen und druecken Sie die Eingabetaste. Ein Index ist ein grosses und alphabetisch geordnetes Menue durch das Sie mit den Cursor-Tasten navigieren koennen. Wenn Sie den Eintrag zu dem Sie interessierenden Themenkomplex gefunden haben, positionieren Sie den Cursor wieder unter das Sternchen am Zeilenanfang und druecken Sie die Eingabetaste um zum relevanten Abschnitt zu gelangen. Das C-Bibliothekshandbuch hat keinen Index, so dass Sie nach einer entsprechen- den Funktion entweder in der alphabetischen Liste oder in der Kategorienliste suchen muessen. Zum Beispiel: die Funktion `mktime' befindet sich in der "Time Functions" Kategorie, die Funktion `random' in der "Random Number Functions" Kategorie, etc. Manchmal wird die Indexsuche Sie nicht zum Ziel bringen, denn der Index kann nicht alles enthalten. In diesem Fall steht Ihnen das s-Kommando (fuer "search" bzw. "suchen") zur Verfuegung. Druecken Sie die s-Taste, tippen Sie den Text ein nach dem Sie suchen, und dann druecken Sie die Eingabetaste. Info wird im gesammten Handbuch nach dem Text suchen und falls er gefunden wird, werden Sie zur ersten Fundstelle gefuehrt. Um nach einem weiteren Auftreten des Textes zu suchen, druecken Sie erneut `s' und dann die Eingabetaste: Info wird die Suche wiederhohlen. Zu guter letzt, wenn Sie nich wissen in welchen Handbuch nach einem gewissen Themenkomplex suchen, koennen Sie das "--apropos" Kommando verwenden. Dieses Kommando veranlasst Info in allen Indizes aller installierten Handbuecher nach dem von Ihnen angegebenen Text zu suchen. Zum Beispiel, nehmen wir an, Sie haetten etwas ueber die Unterstutzung von Dateinamen-Wildcards bei DJGPP Pro- grammen gehoert, aber Sie wuesten nicht in welchem Handbuch nach einer Be- schreibung zu suchen. Das folgende Kommando wird Info dazu veranlassen alle Abschnitte in jedem Handbuch auszugeben, bei welchem der Index den Text "wildcard" aufweist: info --apropos=wildcard Info wird fuer eine Weile laufen, und dann folgende Zeilen ausgeben: "(kb)Features" -- Wildcards "(kb)Changes in 2.01" -- wildcards "(djgppfaq)Filename globbing" -- Filename wildcards expansion Der Text innerhalb der Gaensefuesschen ist der Name des Handbuches und der Abschnitt wo das Thema behandelt wird. Der Handbuchname steht in Klammern, gefolgt von dem Abschnitt. Um Info mit den ersten Eintrag oben aufzurufen, tippen Sie folgendes und druecken Sie dann die Eingabetaste: info --node="(kb)Features" Info hat sehr viel mehr Kommandos und Optionen. Um einen kurzen Ueberblick zu bekommen, rufen Sie Info auf als "info info". Um ausfuehrlicher Information zu erhalten, rufen Sie das Info Handbuch auf "info info-standalone". Kompatibilitaet mit V2.xx ------------------------- Wenn Sie von DJGPP v2.00 auf v2.01 oder hoeher aufruesten, dann sollten Sie Ihre v2.00 Installation vollstaendig loeschen und alle benoetigten Pakete re- installieren. Bedingt durch die unterschiedliche Methode, welche bei der v2.01 und spaeteren DJGPP Versionen verwendet wird um lange Kommandozeilen (und lange Dateinamen unter Win9X) an aufgerufene Programme zu uebermitteln, kann es zu sehr subtilen und damit zu schwer reproduzierbaren Fehlern kommen, wenn v2.00 Programme zusammen mit v2.0x Programmen eingesetzt werden. Siehe FAQ Abschnitt 16.6 fuer weitere Informationen. Kompatibilitaet mit V1.x ------------------------ Existierende Programme, welche unter DJGPP v1.x compiliert wurden und fuer wel- che es noch keine v2.x Versionen gibt koennen weiter verwendet werden. V1 Pro- gramme koennen *keine* V2 Programme ausfuehren (aber V2 Programme *koennen* V1 Programme ausfuehren), deshalb versuchen Sie nicht, zum Beispiel das v1.x Make Programm zu benutzen um den v2.x GCC Compiler auszufuehren. --- COPYRIGHT --- DJGPP V2 ist Copyright (C) 1989-1999 durch DJ Delorie. Manche Teile von libc.a sind Copyright (C) durch die Regents of the University of California at Berkeley. GNU software (gcc, make, libg++, etc) ist Copyright durch die Free Software Foundation. DJGPP V2's copyright erlaubt es Ihnen DJGPP zu benutzen um kommerzielle Anwen- dungen zu schreiben. Falls Sie aber Programm-Code oder Bibliotheken verwenden, die nicht Teil von DJGPP sind (wie beispielsweise gnu's libg++), dann muessen Sie die Copyright-Bestimmungen der entsprechenden Authoren erfuellen. Siehe FAQ Abschnitt 19 fuer genauere Informationen zu diesem Thema. Vor einiger Zeit gab es eine Diskussion in der DJGPP News Gruppe ueber das Copyright von ein Paar der in libc enthaltenen Funktionen. Dieses Copyright verlangte, dass Sie die "University of California, Berkeley" in Ihrer Distibu- tion erwaehten, auch wenn Sie nur Binaerdateien (ausfuehrbare Programme) ver- teilten. Da die Berkeley Lizenz im Juli 1999 geaendert wurde, ist es jetzt nicht mehr noetig, dass Sie das Berkeley Copyright in Ihrer Distribution erwaehnen. Dieses ist eine Auflistung der Dateien und Funktionen aus libc, die ein Berkeley Copyright haben: von libc/ansi/time/ctime.c: asctime ctime gmtime localtime mktime tzset tzsetwall von libc/compat/stdlib/random.c: initstate random setstate srandom ============================================================================== Enjoy! DJ Delorie dj@delorie.com http://www.delorie.com/