Kompilieren unter WSL für Windows 10

Fehlt RailControl eine Funktion oder hat jemand neue Ideen?
Post Reply
michaelaskew
Posts: 1
Joined: Mon Jul 31, 2023 3:42 am

Kompilieren unter WSL für Windows 10

Post by michaelaskew »

Hallo Teddy,

Kennen Sie WSL unter Windows 10 (Windows-Subsystem für Linux)? Dort kann auch RailControl übersetzt werden. Ich habe meine Beschreibung als Referenz beigefügt. Vielleicht findet es jemand interessant.
Grüße
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Kompilieren unter WSL für Windows 10

Post by teddy »

Hallo

Danke für den Hinweis!
Es stimmt, RailControl kann unter WSL für Windows 10 gebaut werden, ich habe dazu ein Ubuntu-Linux (Standard für WSL) verwendet.

Gruss
Teddy
User avatar
ddebahn
Posts: 45
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Kompilieren unter WSL für Windows 10

Post by ddebahn »

Hallo Teddy,

habe die Versuche mit WSL / WSL2 auch schon gemacht.
WSL unter Windows 10.
WSL 2 unter Windows 11.

Einfach sehr gut. Man kann mit dem VSCode Editor editieren, dort im Terminal neu kompilieren, RailControl starten. Nur bei mir geht es leider nicht mit der seriellen Schnittstelle. Wenn man im Internet sucht gibt es überall Probleme mit der Schnittstelle.

Ich habe auch für WSL bzw. WSL 2 eine für mich detaillierte Beschreibung gemacht. Kann ich natürlich gerne zur Verfügung stellen.

schöne Grüße aus dem Emsland
Dieter
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Kompilieren unter WSL für Windows 10

Post by teddy »

Hallo Dieter

Das Problem der seriellen Schnittstelle ist auf Seiten WSL zu verordnen. Da kann ich wenig machen.

Gerne kannst du die Beschreibung hier zur Verfügung stellen!

Gruss
Teddy
User avatar
ddebahn
Posts: 45
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Kompilieren unter WSL für Windows 10

Post by ddebahn »

Hallo Teddy,

hier die zwei Dateien.
Das ist mir klar das du daran nichts machen kannst, es ist ein Problem unter WSL. Ich hatte gedacht das es unter WSL 2 besser geht, war nichts.
Trotzdem die beiden Dateien, vielleicht tut sich einmal etwas bei Microsoft.
Trotzdem ist es gut einmal mit WSL zu spielen.

wie immer, heute einmal aus dem sonnigem Emsland

Dieter
Attachments
WSL_1_RailControl.pdf
(1.56 MiB) Downloaded 40 times
WSL_2_RailControl.pdf
(1.66 MiB) Downloaded 34 times
User avatar
teddy
Site Admin
Posts: 429
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: Kompilieren unter WSL für Windows 10

Post by teddy »

Hallo Dieter

Was mir gerade auffällt:
Unter Windows werden die Seriellen Schnittstellen ab der Nummer 1 gezählt. Unter Linux jedoch wird mit 0 begonnen. Will heissen, COM4 ist /dev/ttyS3.

Gruss
Teddy
User avatar
ddebahn
Posts: 45
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Kompilieren unter WSL für Windows 10

Post by ddebahn »

Hallo Teddy,
habe die unterschiedlichsten Einstellungen ausprobiert, keine hat Funktioniert.
Im Internet, was ich gefunden habe, haben alle das gleiche Problem, scheinbar wird die serielle Schnittstelle noch nicht unterstütz (laut Microsoft).

Gruss
Dieter
ralflang
Posts: 1
Joined: Thu Apr 04, 2024 6:39 pm

Re: Kompilieren unter WSL für Windows 10

Post by ralflang »

Ich habe heute erfolgreich Railcontrol aus dem git unter Windows 10 WSL und Windows 11 WSL betrieben, jeweils mit einer CC-Schnitte von CanDigitalBahn.

Dazu waren auf Windows 11 zwei Schritte nötig, auf meinem Windows 10 nur einer.

1) Installation von usbipd (War bei mir auf beiden Maschinen nötig)

Ich setze voraus, dass winget bereits installiert ist und eine WSL2-Distribution grundsätzlich läuft.
Gehe in ein Kommandofenster im Administrator-Modus und tippe.

winget install usbipd

Danach kann ein Neustart nötig sein. Nach dem Neustart zunächst die WSL-Distribution erneut starten, zB

wsl -d Ubuntu

Danach erneut ein Cmd-Fenster im Admin-Modus öffnen. Tipp: Rechtsklick.

usbipd list

Wenn es so aussieht, hast du es falsch gemacht:

usbipd list
usbipd: error: not running as root?
usbipd: info: starting usbipd (usbip-utils 2.0)
usbipd: info: listening on 0.0.0.0:3240
usbipd: info: listening on :::3240
^Cusbipd: info: shutting down usbipd

Das Ergebnis sollte ungefähr so aussehen:

usbipd list
Connected:
BUSID VID:PID DEVICE STATE
2-1 046d:c52b Logitech USB Input Device, USB Input Device Not shared
2-3 06cb:00bd Synaptics UWP WBDI Not shared
2-4 04f2:b6d0 Integrated Camera, Integrated IR Camera, Camera DFU Device Not shared
2-10 6001:4711 USB Serial Converter Not shared

Die entscheidende Zeile ist die mit dem Gerät, das man durchreichen will. Bei den meisten Modellbahnzentralen und Interfaces ist das was mit einem FTDI-Chip, das sich als Serielle Schnittstelle ausgibt.

Als nächstes muss das Gerät zur Verfügung gestellt werden. Das kann man entweder über die BUS ID oder über die VendorId:ProductId machen.

Mit der Bus ID ginge es so:

usbipd bind -b "2-10"
usbipd attach -w -b "2-10"

Die Werte sind an euren Rechnern natürlich andere.

Unter Windows 10 tauchte dann für mich im WSL-Linux ein Gerät /dev/ttyUSB0 auf, das im Railcontrol korrekt funktionierte.
Unter Windows 11 musste ich größeren Aufwand treiben. Das habe ich hier dokumentiert: https://www.ralf-lang.de/2024/04/02/run ... 0-11-wsl2/

Ich hoffe, das war nützlich. Eine ausführlichere Anleitung mit Mitschnitten oder Bildern muss ich die Tage mal im Blog einstellen. Sollte es zu werberisch wirken, tut es mir leid. Dann bitte den Link entfernen.
User avatar
ddebahn
Posts: 45
Joined: Sat Apr 03, 2021 11:36 am
Location: Geeste

Re: Kompilieren unter WSL für Windows 10

Post by ddebahn »

Hallo Ralf,
das fehlte noch bei mir, hat alles auf Anhieb geklappt (Windows 11, 23H2, Ubuntu).
Vielen Dank
Dieter

ich habe übrigens meine bebilderte Beschreibung dementsprechend ergänzt, kann ich gerne zur Verfügung stellen.
Post Reply