Rust (Lang) auf Windows kompilieren?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Also online hätte ich dazu jetzt folgendes gefunden:

https://learn.microsoft.com/en-us/windows/dev-environment/rust/

Aber ansonsten würde ich entweder schauen, ob man sinnvolle Compile-Scripte schreiben kann oder WSL benutzen.

Ich habe aber auch noch nicht mit Rust gearbeotet und verstehe nicht, wieso das nicht nativ auf Windows funktioniert.

Inkognito-Nutzer   15.02.2024, 13:15

Den Link schaue ich mir nachher mal an, danke, den habe ich noch nicht gefunden. WSL würde nicht funktionieren, wenn das Programm für Windows (exe) gebaut werden soll

0
Inkognito-Nutzer   15.02.2024, 14:53
@Destranix

Leider war der Link auch nicht hilfreich. Da wird alles für Windows only erklärt und das suche ich nicht. Crossplattform ist wichtig. Es geht bei dem ganzen nicht direkt um das kompilieren, sondern sobald ich ein crate (glaube ich nennt sich das) hinzufüge, welches auch Abhängigkeiten hat, werden diese nicht mit geliefert (bei Linux sind die meisten vorinstalliert). Das problem ist, dass man nicht gesagt bekommt, welche DLLs und libs gebraucht werden. Man muss raten oder die Anwendung scannen und wieder und wieder scannen, weil auch die Abhängigkeiten Abhängigkeiten haben können. Es ist nirgendwo beschrieben, welche man braucht. Es ist einfach nur umständlich

0
Destranix  15.02.2024, 15:27
@Inkognito-Fragesteller

Das klingt jetzt irgendwie genauso wie bei C++-Projekten auch. Da muss man auch oft erst alles installeiren und erraten, was man installieren muss.

Vielleicht gibt es einen Package-Manager dafür? Gibt ja Windows-Package-Manager.
Aber evtl. geht das ganze dann nicht mit MSYS sondern nur nativ in Windows. (Aber das sollte man sowieso bevorzugen wenn es geht, denn MSYS ist meiner Erfahrung nach meist noch mehr Qual.)

0
Inkognito-Nutzer   15.02.2024, 15:42
@Destranix

Naja, ich programmiere ja Crossplattform. Mit Windows package manager habe ich bisher nichts gemacht. Wenn der aber dieselben Pakete bietet, wie mssys, dann wäre der vielleicht eine Lösung. C++ habe ich bereits benutzt. Da waren alle Abhängigkeiten bisher immer mit dabei. Vielleicht habe ich aber auch Glück gehabt mit dem gewählten Bibliotheken

1
Destranix  15.02.2024, 15:44
@Inkognito-Fragesteller
C++ habe ich bereits benutzt. Da waren alle Abhängigkeiten bisher immer mit dabei.

Dann hattest du Glück, ja.

Gibt genug Fälle wo man erst beim compilen dann merkt, dass etwas fehlt. Wenn man Glück hat steht da, was fehlt, wenn nicht muss man in den Dateien nachschauen und rätseln. Und wenn es ganz blöd läuft bekommt man es dennoch nicht zum laufen.

1

Klingt etwas komisch, msys ist ja um binaries für Unix ähnliche Systeme auf Windows zum laufen zu bekommen. Bevor Du auf so was setzt würde ich eher einfach WSL nutzen.

Naja, nutzt du die Windows Version von rustup und Cargo für deine builds?

geht es dir um bestimmte crates die du nicht zum laufen bekommst oder generell auch simpel Anwendungen zu compilen?

An sich ist rust denke ich eher auf die technisch versierte Zielgruppe und eben auch Open Source Community ausgelegt, ergibt ja auch Sinn, dass da viel auf Linux passiert. Muss auch zugeben, habe noch nie versucht mit Rust auf Windows zu entwickeln, aber da Cargo auch relativ gut ist kann ich mir nicht vorstellen, dass es generell so ein Problem ist.

PS: mit UI Development wirst du mit Rust vermutlich auch einfach nicht viel Spaß haben. Die Sprache funktioniert einfach etwas anderes als andere Sprachen, was manche patterns vielleicht erschwert oder in Rust einfach hässlich macht. Es ist einfach mehr in Richtung Systems Programming angesiedelt und gibt weniger ui Fokus.

Woher ich das weiß:Berufserfahrung – Software Entwickler / Devops

https://de.wikipedia.org/wiki/Cargo_(Software)

Ich denke ohne cargo wirst Du relativ wenig Spaß haben.

Inkognito-Nutzer   15.02.2024, 13:13

Cargo lädt keine Abhängigkeiten, wie DLL oder lib. Es holt sich lediglich die Basis

0
Inkognito-Nutzer   15.02.2024, 14:00
@KarlRanseierIII

Nein, aber einige rust Bibliotheken haben Abhängigkeiten, die nicht automatisch mit geliefert werden

0