Fino a poco tempo fa, mi è stato l'esecuzione di questo bellezza per costruire + eseguire un progetto con una pila:Esiste un `stack run 'simile a` cabal run`?
stack build && .stack-work/install/x86_64-linux/lts-4.1/7.10.3/bin/<project-name>
mi è stato detto su IRC che questo può essere semplificata in
stack build && stack exec <project-name>
Questo può essere ancora più semplificato, a
stack run
o almeno
stack run <project-name>
?
Se ricordo correttamente ciò era possibile con cabal run
.
Edit:
@ commento di haoformayor si sta avvicinando:
alias b='stack build --fast --ghc-options="-Wall" && stack exec'
Anche se questo ha ancora bisogno il nome del progetto, giusto?
Ho anche iniziato ad avvicinarmi con
function stack-run() { stack build && stack exec `basename "$PWD"` }
Anche se questo funziona solo se il nome del progetto corrisponde con il nome della cartella. Forse possiamo interrogare cabal/stack per la prima voce executable
nel file .cabal? O forse potremmo farlo con sed
...
io non credo ci sia un comando equivalente. Uso gli alias di shell per fare qualcosa di simile. Qualcosa come 'alias b = 'stack build --fast --ghc-options =" - Wall "&& stack exec'' – hao
@haoformayor Questo si sta avvicinando a quello che sto cercando. Un secondo, estenderò un po 'la mia domanda. – Wizek
è abbastanza facile afferrare il nome dell'eseguibile se necessario: 'grep '^ eseguibile' * .cabal | cut -d '' -f 2 | head -n 1' – hao