Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Χθές σετάριζα user-configurable build systems στον γενικής χρήσης editor μου (Sublime Text). Πρακτικά αυτό σημαίνει πως με ένα keyboard shortcut κανονίζεις να τρέξει κάποιο πρόγραμμα, π.χ. όταν δουλεύεις ένα C αρχείο τρέχει compiler, linker και το παραγόμενο εκτελέσιμο και σου εμφανίζονται τα αποτελέσματα σε ένα pane μέσα στο παράθυρο του editor.

 

Το λεπτό σημείο είναι πως εμφανίζεται το standard out από τα προγράμματα που τρέχεις. Μ' ενδιαφέρει να κάνω ένα build system που να εμφανίζει την παραγόμενη assembly, αλλά τρέχοντας

clang -S foo.c

τα αποτελέσματα πηγαίνουν στο foo.s και όχι στο standard out.

 

Μπορώ να αλλάξω αυτή τη συμπεριφορά με κάποιο τρόπο;

 

ΥΓ: workarounds "για να γίνει η δουλειά" υπάρχουν πολλά. Εδώ μ' ενδιαφέρει να δω αν υπάρχει κάποια "καθαρή" λύση.

  • Like 1
Δημοσ.
clang -S -O3 -o - file.c

ή

clang file.c -S -O3 -o -

Μαζί με την τελευταία παύλα ( δηλαδή σαν όνομα output αν δώσεις - ) "πετάει" τον κώδικα της assembly στο standard output. 

 

 

Γενικότερα εδώ για τον llc λέει

If the -o option is omitted, then llc will send its output to standard output if the input is from standard input. If the -o option specifies -, then the output will also be sent to standard output.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...