Update faq authored by Michael Roth's avatar Michael Roth
# VM FAQ & Probleme
# FAQs
Hier sind aktuelle bekannte Probleme und Schwierigkeiten aufgelistet
## "Verschlucken" von Ausgaben
## Update 6.8
Offenbar "verschluckt" das interne Terminal von QtCreator teilweise Ausgaben, wenn zu viele Ausgaben zu schnell vor Ende des Programms getätigt wurden.
Behebt einen Bug beim Debugger.
Wenn Sie dies bei Ihrem Programm beobachten, können Sie **einen** der folgenden Workarounds anwenden:
Laden Sie entweder die Version 6.8 herunter oder tippen Sie folgendes in ein Terminal:
- Ein `cin` vor Ende der Anwendung
- Ein `this_thread::sleep_for(100ms)` vor Ende der Anwendung (benötigt `#include<thread>`)
- Einen Haltepunkt auf die letzte Zeile, bspw. das `return 0;` setzen und das Programm im Debugger ausführen
```
sudo -i
echo "kernel.yama.ptrace_scope = 0" >> /etc/sysctl.d/10-disable-ptrace.conf
```
Dies ist **kein** Fehler der Prüfungsumgebung an sich, sondern von QtCreator!
Anschließen neu starten.
## Fehlermeldung: "Kein Debugger im Kit vorhanden"
## Update 6.7
Stellen Sie sicher, dass im verwendeten Kit ein Debugger konfiguriert ist. Ist der Zustand wie im Bild, dann stellen Sie anstatt "Kein" einen Debugger ein (gdb oder lldb).
- `cmake` ist nun Standard in QtCreator >= Version 11
- Die aktuelle Version von QtCreator hat offenbar einen [Bug](https://bugreports.qt.io/browse/QTCREATORBUG-29503?jql=project%20%3D%20QTCREATORBUG%20AND%20fixVersion%20%3D%20%22Qt%20Creator%2011.0.3%20(11.0%20branch)%22), so dass im Terminal immer eine Fehlermeldung erscheint. Bis auf die Meldung scheint das aber keine weiteren Auswirkungen zu haben.
- Ab QtCreator 11.0 werden die .h/.cpp Dateien von neu erzeugten Klassen automatisch zum cmake File hinzugefügt
## "Mini" Update 6.4.1
In der Version 6.4.1 sind einige Einstellungen von QtCreator gesetzt:
- clang-tidy ist konfiguriert wie in der [Anleitung beschrieben](https://code.fbi.h-da.de/lab-docs/erstie-vm/-/wikis/QtCreator/Statische-Codeanalyse-mit-clang-tidy)
- clang-format ist konfiguriert wie in der [Anleitung beschrieben](https://code.fbi.h-da.de/lab-docs/erstie-vm/-/wikis/QtCreator/Codeformatierung-mit-clang-format)
- qmake (hoffentlich) als Standard Build System gesetzt (anstelle von cmake)
- Shared Folder von Vagrant entfernt
## Update 6.2/6.3 auf 6.4
- Deaktivieren von Drag & Drop
- Update des gesamten Systems mittels Terminal:
- Zunächst die Repository Datenbank aktualisieren: `yay -Sy`
- Dann den Keyring aktualisieren: `yay -S archlinux-keyring`
- Anschließend das System aktualisieren: `yay`. Alle Eingaben einfach mit Enter bestätigen
## Maus reagiert nicht mehr auf Klicks (Gelöst in 6.4)
Ab und zu tritt es auf, dass die Maus nicht auf Klicks reagiert, die VM wirkt daher wie eingefroren. Allerdings reagiert der Mauszeiger noch und auch **die Tastatur funktioniert noch wie gewohnt**.
**Wenn es auftritt, besteht der aktuelle Fix aus einem Neustart**. Wenn aktuell noch an Projekten gearbeitet wird, evtl. folgende Schritte durchführen:
- Sicherstellen, dass der Qt Creator das aktive Fenster ist
- So lange in der VM Alt+Tab drücken, bis Qt Creator aktiv ist
- Alle Dateien speichern mit Strg+Shift+S
- QtCreator beenden mit Strg+Q
- Mit Alt+F2 öffnet sich der Anwendungsfinder
- Dort `xfce4-session-logout` eintippen, mit Enter bestätigen
- Dann mit den Cursortasten und Enter "Neu Starten" auswählen
### Mögliche dauerhafte Lösung: Deaktivieren von Drag & Drop
Das Deaktivieren von Drag & Drop scheint die Probleme mit der Maus zu beheben.
## Update der VM von 6.1 auf 6.2
In Version 6.1 fehlt leider die Unterstützung für zip files. Dies kann mit durch die Installation folgender Pakete nachgeholt werden:
```
yay -S xarchiver zip p7zip
```
Unter Umständen ist vorher ein Update des gesamten Systems notwendig, dies kann mittels `yay -Syu` erledigt werden.
## Update der VM von 4.x auf 4.10
In 4.10 wurden viele Altlasten und Konfigurationen geändert, so dass eine Neuinstallation
dieser Version empfohlen wird.
## Update der VM von 4.8 auf 4.9
Falls Sie die VM nicht neu herunter laden und konfigurieren möchten, können Sie auch Ihre alte VM Version 4.8 mit dieser Anleitung auf den Stand von 4.9 bringen.
Um die VM von Version 4.8 auf 4.9 upzudaten, führen Sie folgende Schritte aus:
- Machen Sie sicherheitshalber ein Backup der mirrorlist: `sudo mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak`
- Erstellen Sie eine neue Mirrorlist und fügen Sie Zeile `Server = http://mirror.metalgamer.eu/archlinux/$repo/os/$arch` dort ein:
- `sudo vim /etc/pacman.d/mirrorlist`
- Taste `i` drücken
- Strg + Shift + v zum Einfügen der Zeile (oder Zeile abtippen)
- Nacheinander drücken: Escape Taste, :, w, q, Enter Taste
- Die PGP Schlüsseldatei aktualisieren: `sudo pacman-key --refresh-keys`
- Alle Pakete des Systems aktualisieren: `sudo pacman -Syu`
- Eventuelle Nachfragen während des Prozesses mit Enter bestätigen
- System neu starten und hoffen, das alles geklappt hat :)
- Falls nicht, laden Sie einfach die VM neu herunter.
## Probleme mit der Installation unter MacOS
Wenn Sie Probleme bei der Installation von **VirtualBox** unter MacOS haben, kann [diese Anleitung](https://medium.com/@DMeechan/fixing-the-installation-failed-virtualbox-error-on-mac-high-sierra-7c421362b5b5) Abhilfe schaffen.
## Audio funktioniert nicht
In der VM ist absichtlich kein Audiotreiber installiert. Falls Sie dennoch Audio benötigen, können Sie dies in folgenden Schritten tun:
1. Aktivieren Sie Audio in den Einstellungen der VM. Klicken Sie dazu die Checkbox "Audio aktivieren" an. Bei einem Linux Host System stellen Sie "PulseAudio" ein, unter Windows vermutlich DirectSound:
![Screenshot_20200421_102129](uploads/2cf6f81acbbe0f9c3f5c8b4e59e2d7b2/Screenshot_20200421_102129.png)
2. Installieren Sie die Pakete `pulseaudio` sowie `xfce4-pulseaudio-plugin` mit den Befehlen
- `sudo pacman -S pulseaudio`
- `sudo pacman -S xfce4-pulseaudio-plugin`
3. Starten Sie die VM neu.
4. Fügen Sie der XFCE Kontrollleiste das Plugin zur Lautstärkeregelung hinzu:
- Rechtsklick auf die obere Leiste
- Submenü "Leiste"
- Auswahl "Neue Elemente hinzufügen"
- Auswahl "PulseAudio Modul"
5. Klicken Sie das neu hinzugefügte Plugin und aktivieren Sie den Ton und stellen die Lautstärke ein.
## "Rechtsklick -> neue Datei" funktioniert nicht (gelöst in 4.9)
Wenn Sie eine neue Datei anlegen wollen, öffnen Sie ein Terminal und erzeugen die Datei mittels `touch dateiname.erweiterung`
## Im geteilten Ordner sind Programme nicht ausführbar (gelöst in 4.8)
Editieren Sie erneut die Mount Liste mittels `sudo nano /etc/fstab` von der Konsole aus. Fügen Sie ans Ende der Optionsliste nach `,user` noch `,exec` an. Speichern Sie die Datei und starten Sie die VM neu.
\ No newline at end of file
![Debugger Einstellung auf gdb stellen](uploads/5cf28af50eaebf3d085db9dcf165bda8/debugger.png)
\ No newline at end of file