2016-06-02 10 views
14

Come posso eseguire il debug di un'applicazione di Rust passo dopo passo in modo interattivo come se fosse possibile eseguire "la leva" in Ruby?Debugger interattivo passo passo per Rust?

Desidero essere in grado di vedere e preferibilmente modificare le variabili in tempo reale quando raggiungo un punto di interruzione. Esiste un progetto pronto per la produzione?

+0

è possibile utilizzare gdb. Oltre a questo, sto lavorando a uno stepper per MIR (implementato in cima a miri), che ti consentirà di eseguire il debug su una sorta di macchina virtuale. –

+0

@ker: Oh! Miri è abbastanza vicino al completamento? Pensavo che fosse ancora nelle fasi iniziali. –

+0

@MatthieuM .: ci sono ancora alcune cose che non funzionano ancora (ad esempio i puntatori di funzione), ma stanno lentamente arrivando. –

risposta

10

Il compilatore Rust produce binari nativi con informazioni di debug nativo (simboli), quindi qualsiasi debugger nativo funzionerà. Ciò significa che sono gdb e lldb oi debugger di Windows (WinDBG o solo Visual Studio) se si utilizza la versione MSI ABI di Rust. Se si desidera un'esperienza integrata, RustDT è la strada da percorrere (installazione su Windows: How to set up GDB for debugging Rust programs in Windows?). Tieni presente che è probabile che tu corri su How can I inspect variable values while debugging MSVC ABI Rust programs? su Windows e https://github.com/rust-lang/rust/issues/33062 su un Mac.

+0

E con 'gdb 7.12', ora c'è il supporto adeguato, non solo" funziona perché è compilato in nativo ". – domen