Hallo Welt in LLVM-Assembly Sprache unter Windows

8

Als erfahrener Programmierer fühle ich mich ziemlich dumm, eine solche Frage zu stellen: Gibt es ein Schritt-für-Schritt-Tutorial, das erklärt, wie man ein "Hello World" -Programm in LLVM-Assembly Language schreibt, was zu einer einfachen "hello.exe" führt? welches kann auf einem Standard Windows PC ausgeführt werden?

Ich habe Dutzende solcher Tutorials erklärt, die erklären, wie man checkout, make, llvm kompiliert usw. Aber entweder benötigen sie eine andere Software (was zu einem anderen Tutorial-Marathon führt), oder sie haben ein paar "Path / File / Dll" nicht gefunden "-Error (was zu einem weiteren Tutorial-Marathon führt). Ich habe es geschafft, llvm.exe einmal ausführen zu lassen. Windows meldet nun, dass die Anwendung abstürzt?!

Jetzt fühle ich mich völlig verloren in einem Labyrinth von veralteten Tutorials, Fehlern, Inkompatibilitäten, Emulatoren / VMs, IDE, Crosslinks, 32 vs. 64-Bit, mit / ohne WinGW, mit / ohne Cygwin, ohne / mit Visual Studio, with / out clang, experimental, nicht unterstützt, fehlende Umgebungsvariablen etc.

Ich habe erwartet, ein Installationsprogramm oder Archiv zu finden, das eine Reihe vorkompilierter dll- und exe-Dateien enthält, die über die Befehlszeile verwendet werden können. Ich möchte nur ein blankes llvm-Toolset verwenden - kein clang, kein Visual Studio (wenn möglich) - genau wie javac.exe, masm.exe, fasm.exe, link.exe, ...

Wenn ich llvm selbst kompilieren muss, wäre die Möglichkeit, dies über Eclipse-CDT zu erreichen, großartig - ich konnte das Projekt nicht ohne FileNotFound-Fehler importieren; was mit einigen make-spezifischen Inkompatibilitäten bezüglich der Verzeichnisstruktur zusammenhing ... cmake sollte dieses Problem gelöst haben, aber das einzige Tutorial, das ich bisher gefunden habe, war über cmake-gui - das aus anderen Gründen nicht installiert werden konnte ...

Kann mir bitte jemand ein aktuelles Tutorial zeigen, wie man eine funktionierende llvm-as.exe erstellt oder eine Schritt-für-Schritt-Anleitung schreibt, wie er / sie das oben genannte erreicht hat?

Vielen Dank im Voraus - ich habe bis jetzt drei Tage verloren: /

    
Kai Giebeler 20.10.2013, 21:48
quelle

2 Antworten

4

LLVM hatte in der Vergangenheit eine zweitklassige Unterstützung unter Windows, aber in letzter Zeit haben sich die Dinge geändert, so dass Sie ein gutes Timing haben. Schauen Sie sich diesen LLVM Blog-Beitrag von nur einem Monat an vor. Es zeigt auf diese Seite mit binären Builds der LLVM-Toolchain für Windows. Sobald Sie die Tools haben, ist der Fluss zu einer "Hallo Welt" ähnlich wie bei anderen Plattformen. Es wäre eine gute Idee mit dem LLVM-Lernprogramm zu beginnen .

FWIW gibt es auch einen Einstieg in den Windows-Leitfaden , obwohl ich mir nicht sicher bin, wie aktuell er ist der oben erwähnte Blogpost. Es erstellt jedoch eine "Hallo Welt" LLVM IR-Datei in den Prozess.

    
Eli Bendersky 21.10.2013 00:02
quelle
0

Ich empfahl ursprünglich die Binärdateien von Ссылка , aber sie scheinen überhaupt nicht zu funktionieren. Meine Empfehlung ist, MinGW für jetzt zu vergessen und mit Microsoft Visual Studio 2010+ zu erstellen. Zumindest die Tools wie "llc" funktionieren. Ich weiß nicht, ob Sie mit der Windows-API verknüpfen können, aber ich denke schon.

    
archfrog 04.11.2013 04:59
quelle

Tags und Links