2853
Comment:
|
← Revision 28 as of 2010-06-03 14:33:52 ⇥
4210
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Frequently Asked Questions = '''Contents''' |
|
Line 5: | Line 3: |
=== Bis wann werden die Übungsblätter korrigiert? === ||'''A:''' Die Tutoren, die für die Korrektur der Übungsblätter verantwortlich sind, studieren ebenfalls. Die Korrektur sollte trotzdem immer spätestens zur nächsten Vorlesung vorliegen.|| |
|
Line 7: | Line 7: |
=== Warum kann ich nicht alles in meinem Windows machen? === | === Warum kann ich nicht Windows verwenden? === |
Line 10: | Line 10: |
=== Welches Linux soll ich verwenden? Es gibt so viele davon! === ||'''A:''' Das ist völlig egal, jedes Linux Distribution genügt den Vorraussetzungen für diese Veranstaltung. Eine einfache Möglichkeit stellen darüber hinaus sogenannte [[http://www.vmware.com/appliances/ | Appliances]] dar. Das sind [[http://de.wikipedia.org/wiki/Virtuelle_Maschine | Virtuelle Maschinen]] gebündelt mit einem vorinstalliertem Betriebssystem. So kann man Linux verwenden ohne sein gegenwärtiges Betriebsystem ersetzen zu müssen. Für Einsteiger hat sich [[http://www.vmware.com/appliances/directory/1224 | Ubuntu]] Linux als einfach zu benutzende Distribution bewährt. Es ist aber grundsätzlich jedes Linux verwendbar, dass den C++ GNU Compiler g++, make, Python und einen Editor installiert hat.|| |
=== Welches Linux soll ich verwenden? === ||'''A:''' Das ist völlig egal, jede Linux Distribution genügt den Vorraussetzungen für diese Veranstaltung. Eine einfache Möglichkeit stellen darüber hinaus sogenannte [[http://www.vmware.com/appliances/ | Appliances]] dar. Das sind [[http://de.wikipedia.org/wiki/Virtuelle_Maschine | Virtuelle Maschinen]] gebündelt mit einem vorinstallierten Betriebssystem. So kann man Linux verwenden ohne sein gegenwärtiges Betriebssystem ersetzen zu müssen. Für Einsteiger hat sich [[http://www.ubuntu.com/GetUbuntu/download | Ubuntu]][[http://www.vmware.com/appliances/directory/1224 | (VMWare Appliance)]] als einfach zu benutzende Distribution bewährt. Es ist aber grundsätzlich jedes Linux verwendbar, das den C++ GNU Compiler g++, make, Python und einen Editor installiert hat.|| |
Line 13: | Line 13: |
=== Mein WLAN funktioniert nicht! === ||'''A:''' Wenden Sie sich an unsere [[http://www.studium.uni-freiburg.de/newsletter/2009/11/rz.html|Mitarbeiter im Rechenzentrum]].|| |
=== Mein WLAN funktioniert nicht. === ||'''A:''' Wenden Sie sich an unsere [[http://www.studium.uni-freiburg.de/newsletter/2009/11/rz.html|Mitarbeiter im Rechenzentrum]]. Ihnen wird dort etwa beim Einrichten fehlender Treiber geholfen.|| |
Line 17: | Line 17: |
=== Fehlermeldung 'svn: "." is not a working copy' === | === Fehlermeldung 'svn: "." is not a working copy'. === |
Line 20: | Line 20: |
=== Fehlermeldung 'svn: warning: 'folder-x' is already under version control' === ||'''A:''' Im Ordner folder-x befindet sich bereits ein Ordner '.svn', der Subversion anzeigt, dass sich 'folder-x' unter Versionskontrolle befindet. Falls Ihr Ordner 'folder-x' sich de facto aber nicht unter Versionskontrolle befindet, da Sie ihn noch nicht comittet haben, liegt die Fehlermeldung womöglich daran, dass Sie den Ordner .svn versehentlich nach 'folder-x' kopiert haben. In diesem Fall löschen Sie einfach den Ordner '.svn' in 'folder-x' und versuchen Sie erneut 'folder-x' zu comitten.|| |
|
Line 21: | Line 24: |
=== Beim Kompilieren meines Programms erhalte ich seitenlange, kryptische Fehlermeldungen. === | === Fehlermeldung: /usr/local/lib/libgtest.so undefined reference to 'pthread_...' === ||'''A:''' Kompilieren Sie Ihr Programm mit der Option '-pthread'. TODO(hoffmaje): explain a little why -pthread is needed!|| === Fehlermeldung: Makefile 8 ***missing seperator. Schluss.? === ||'''A:''' GNU Make besteht darauf, dass nach einem Target, z.B. 'build' jedes folgende Kommando mit einem TAB beginnt. Stellen Sie sicher, dass in der Makefile, hier in Zeile 8, das Kommando mit einem TAB beginnt.|| === Ich erhalte seitenlange, kryptische Fehlermeldungen. === |
Contents
Organisatorisches
Bis wann werden die Übungsblätter korrigiert?
A: Die Tutoren, die für die Korrektur der Übungsblätter verantwortlich sind, studieren ebenfalls. Die Korrektur sollte trotzdem immer spätestens zur nächsten Vorlesung vorliegen. |
Programmieren in C++
Betriebssystem Spezifisches
Warum kann ich nicht Windows verwenden?
A: Es sprechen viele Gruende dafuer, dass Sie 'Linux lernen' sollen. Einer davon ist es z.B. sich mit den grundlegenden Problemen des Programmierens & Kompilierens per Kommandozeile und Editor zu befassen um dann anschliessend mächtigere Tools & IDEs effizienter und kompetenter einsetzen zu können. |
Welches Linux soll ich verwenden?
A: Das ist völlig egal, jede Linux Distribution genügt den Vorraussetzungen für diese Veranstaltung. Eine einfache Möglichkeit stellen darüber hinaus sogenannte Appliances dar. Das sind Virtuelle Maschinen gebündelt mit einem vorinstallierten Betriebssystem. So kann man Linux verwenden ohne sein gegenwärtiges Betriebssystem ersetzen zu müssen. Für Einsteiger hat sich Ubuntu(VMWare Appliance) als einfach zu benutzende Distribution bewährt. Es ist aber grundsätzlich jedes Linux verwendbar, das den C++ GNU Compiler g++, make, Python und einen Editor installiert hat. |
Mein WLAN funktioniert nicht.
A: Wenden Sie sich an unsere Mitarbeiter im Rechenzentrum. Ihnen wird dort etwa beim Einrichten fehlender Treiber geholfen. |
Versionsverwaltung (SVN)
Fehlermeldung 'svn: "." is not a working copy'.
A: Sie befinden sich nicht in einer 'working copy' Ihres Arbeitsverzeichnisses. Wechseln Sie den Ordner und vergewissern Sie sich etwa mit 'svn info', dass Sie sich nun in Ihrem Arbeitsverzeichnis befinden. Wenn Sie die Meldung weiterhin erhalten, haben Sie ihr Arbeitsverzeichnis erneut auszuchecken. |
Fehlermeldung 'svn: warning: 'folder-x' is already under version control'
||A: Im Ordner folder-x befindet sich bereits ein Ordner '.svn', der Subversion anzeigt, dass sich 'folder-x' unter Versionskontrolle befindet. Falls Ihr Ordner 'folder-x' sich de facto aber nicht unter Versionskontrolle befindet, da Sie ihn noch nicht comittet haben, liegt die Fehlermeldung womöglich daran, dass Sie den Ordner .svn versehentlich nach 'folder-x' kopiert haben. In diesem Fall löschen Sie einfach den Ordner '.svn' in 'folder-x' und versuchen Sie erneut 'folder-x' zu comitten.||
Kompiliervorgang (g++ & make)
Fehlermeldung: /usr/local/lib/libgtest.so undefined reference to 'pthread_...'
A: Kompilieren Sie Ihr Programm mit der Option '-pthread'. TODO(hoffmaje): explain a little why -pthread is needed! |
Fehlermeldung: Makefile 8 ***missing seperator. Schluss.?
A: GNU Make besteht darauf, dass nach einem Target, z.B. 'build' jedes folgende Kommando mit einem TAB beginnt. Stellen Sie sicher, dass in der Makefile, hier in Zeile 8, das Kommando mit einem TAB beginnt. |
Ich erhalte seitenlange, kryptische Fehlermeldungen.
A: Mit einiger Wahrscheinlichkeit handelt es sich um einen 'linker Fehler', d.h. in der Zeile mit der Sie Ihr Programm kompilieren, fehlt ein Verweis auf eine Objektdatei (.o) oder eine Bibliothek (.a, .so) oder einer der von Ihnen angegebenen Verweise konnte nicht gefunden werden. Vergewissern Sie sich, dass Ihr Compileraufruf alle Objektdateien und Bibliotheken auflistet, die Ihr Programm benoetigt und dass alle diese Verweise existieren und durch den Compiler gefunden werden koennen. |
Stilfragen (Lint)
Ich finde Lint zu pingelig. Muss das denn sein?
A: Ja, es muss. Sie werden nach den ersten Uebungsblaettern die typischen Lint Fehler kennen und nach nicht geraumer Zeit werden Sie automatisch Code schreiben, der keine oder kaum Lint-Fehler mehr verursacht. |