Ich bin ein großer Fan des Windows-Subsystems für Linux. Es ist echtes Linux, das ELF-Binärdateien im echten Benutzermodus ausführt, aber alles unter Windows 10. Es läuft nicht in einer virtuellen Maschine. Ich spreche in diesem YouTube-Video darüber und über einige der Dinge, die Sie beachten sollten, wenn Sie Dateien zwischen Dateisystemen austauschen.
WAS IST DIESES LINUX-UNTER-WINDOWS-MATERIAL? Hier ist eine FAQ zum Bash/Windows-Subsystem für Linux/Ubuntu unter Windows/Snowball in Hell und einige detaillierte Versionshinweise. Ja, es ist echt, und es ist spektakulär. Sie können nicht so viel Text lesen? Hier ist ein Video, das ich auf Ubuntu unter Windows 10 gemacht habe.
Sie können jetzt nicht nur Ubuntu aus dem Windows Store installieren (stellen Sie sicher, dass Sie dies zuerst von einer Windows PowerShell-Admin-Eingabeaufforderung ausführen) – „Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux "
Ich habe eine sehr glänzende Linux-Umgebung unter Windows 10 mit schönen Dingen wie tmux und Midnight Commander eingerichtet. Die bash/Ubuntu/WSL-Shell teilt sich denselben „Konsolenhost“ (conhost) wie PowerShell und CMD.exe, sodass jedes Terminal diese neue Funktion erhält, wenn der Typ neue Unterstützung für Schriftarten, Farben, ANSI usw. hinzufügt.
Ich wollte sehen, wie weit das geht. Wie Linuxy ist Linux unter Windows? Wie gut ist die ANSI/ASCII-Unterstützung in der Konsole unter Windows 10? Der einzig wirkliche Weg, dies zu überprüfen, wäre eindeutig, zu versuchen, 0verkill zu bauen. 0verkill ist ein 2D-Deathmatch-ähnliches Client-Server-Spiel im ASCII-Stil. Es hat sowohl Client als auch Server und viele coole Funktionen. Außerdem würde der Bau das System ziemlich gut trainieren. Es ist auch fast 20 Jahre alt, was Spaß macht.
PRO-TIPP: Wussten Sie, dass Sie mit dem neuen kostenlosen Open-Source-ColorTool ganz einfach die Farben Ihrer Eingabeaufforderung global ändern können? Sie können leicht zu solarisierten oder sogar farbenblinden Schemata für Deuteranopie wechseln.
Es gibt einen Fork des 0verkill-Codes unter https://github.com/hackndev/0verkill, also habe ich dort angefangen. Ich habe gesehen, dass es ein ./rebuild-Skript gibt, das aclocal, autoconf, configure und make verwendet, also musste ich einige Sachen apt.
sudo apt-get install build-essential autotools-dev automake sudo apt-get install libx11-dev sudo apt-get install libxpm-dev
Dann habe ich es mit ./rebuild gebaut und eine TONNE Warnungen bekommen. Sieht so aus, als ob dieser ziemlich alte Code einige (jetzt in der modernen Welt) fragwürdige Dinge mit fprintf macht. Obwohl ich die Warnungen ignorieren kann, habe ich mich entschieden, -Wno-format-security zu den CFLAGS in Makefile.in hinzuzufügen, um mich auf größere Fehler zu konzentrieren, auf die ich stoßen könnte.
Ich baue dann wieder neu auf und bekomme ein paar Warnungen, aber nichts Wichtiges. Schön.
Ich betreibe den Server lokal mit ./server. Dadurch können Sie mehrere Clients verbinden, obwohl ich mich nur lokal verbinden werde, ist es schön, dass das Netzwerk funktioniert.
$ ./server 11. 1.2018 14:01:42 Running 0verkill server version 0.16 11. 1.2018 14:01:42 Initialization. 11. 1.2018 14:01:42 Loading sprites. 11. 1.2018 14:01:42 Loading level "level1".... 11. 1.2018 14:01:42 Loading level graphics. 11. 1.2018 14:01:42 Loading level map. 11. 1.2018 14:01:42 Loading level objects. 11. 1.2018 14:01:42 Initializing socket. 11. 1.2018 14:01:42 Installing signal handlers. 11. 1.2018 14:01:42 Game started. 11. 1.2018 14:01:42 Sleep
Als nächstes führen Sie den Client in einem anderen Bash/Ubuntu-Konsolenfenster (oder einem tmux-Bereich) mit ./0verkill.
aus
Genial. Funktioniert super, skaliert mit der Fenstergröße, ASCII und Farbe sieht super aus.
Jetzt muss ich nur noch jemanden finden, der mit mir spielt...
Sponsor: Holen Sie sich den neuesten JetBrains Rider zum Debuggen von .NET-Code von Drittanbietern, Smart Step Into, weitere Debugger-Verbesserungen, C# Interactive, den Assistenten für neue Projekte und das Formatieren von Code in Spalten.