Beim Kompilieren einer Haskell-Quelldatei über ghc --make foo.hs
hinterlässt GHC immer eine Reihe anderer Zwischendateien als foo.exe
. Diese sind foo.hi
und foo.o
.Wie kann GHC keine Zwischendateien erzeugen?
Oft muss ich am Ende die .hi und .o Dateien löschen, um die Ordner nicht zu überladen.
Gibt es eine Befehlszeilenoption für GHC, die Zwischendateien nicht zu löschen? (Bei der Frage auf #haskell war die beste Antwort, die ich bekam, ghc --make foo.hs && rm foo.hi foo.o
.
Ich weiß, dass diese Frage alt ist, aber dieser Tipp ist sehr praktisch. Ich habe einen Alias zu meinem './Zshrc' für ghc hinzugefügt, um alle Zwischendateien jedes Mal in einen Ordner zu legen, wenn ich ghc über die Kommandozeile starte – djhworld
Wenn ich cabal nicht benutze, schreibe ich normalerweise ein Makefile (auch unter Windows)), setze das '-outputdir' wie erwähnt und lösche es automatisch aus dem Makefile. – MasterMastic
Ich finde es auch einfacher, nur ein Shell-Skript zu schreiben. Da ich nur ein Programm testen wollte, schrieb ich einfach eine 'run.sh' mit' ghc program.hs -outputdir dist && ./program && rm programm && rm -rf dist/' – lucasarruda