Eksik kaynak kodu bulmak için arama yollarını eklemek için gdb "dizini" lldb eşdeğerini mi arıyorsunuz (veya xcode içinde benzer işlevler)?Kaynak arama yolunu belirtmek için gdb "directory" komutunun LLDB karşılığı mı?
Şimdiden teşekkürler!
Eksik kaynak kodu bulmak için arama yollarını eklemek için gdb "dizini" lldb eşdeğerini mi arıyorsunuz (veya xcode içinde benzer işlevler)?Kaynak arama yolunu belirtmek için gdb "directory" komutunun LLDB karşılığı mı?
Şimdiden teşekkürler!
target.source-map
ayarı, hata ayıklama oturumunda bir dizi a => b
yol yeniden tanımlamasını tanımlamanıza izin verir. Bu, temel dosya adına kaynak dosyaları aramak için dizinlerin bir listesi olan gdb dir komutuyla aynı değildir, ancak aynı sorunları source-map
ile çözebilirsiniz.
% cd /tmp
% echo 'int main() { }' > a.c
% clang -g a.c
% mkdir hide
% mv a.c hide/
% xcrun lldb a.out
(lldb) settings set target.source-map /tmp /tmp/hide
(lldb) l -f a.c
1 int main() { }
(lldb) br se -n main
Breakpoint created: 1: name = 'main', locations = 1
(lldb) r
Process 21674 launched: '/private/tmp/a.out' (x86_64)
Process 21674 stopped
* thread #1: tid = 0x1f03, 0x0000000100000f49 a.out`main + 9 at a.c:1, stop reason = breakpoint 1.1
#0: 0x0000000100000f49 a.out`main + 9 at a.c:1
-> 1 int main() { }
(lldb)
bu ayarda, lldb tip set list target.source-map
hakkında daha fazla bilgi için: Ben derleme sonra gizli bir dizine bir kaynak dosya taşımak nereye İşte bir örnek. fwiw bu lldb içinde apropos path
yaparak, bu ad/açıklamada yolu kelimesine sahip tüm komutları/ayarları listeleyerek keşfettiniz. Bu isimde bir ayar olduğunu gördükten sonra, ayar listesini görmek ve target.
altında dosyalandığını öğrenmek için settings list
yapardınız.
Jason, kullanımı açıklığa kavuşturduğunuz ve iyi bir açıklayıcı örnek sunduğunuz için teşekkür ederiz! ("Bir resim bin kelimeye bedeldir" ;-) Umarım bu örneği "GDT TO LLDB COMMAND MAP" (http://lldb.llvm.org/lldb-gdb. html)./Saygılarımla, Lars. – IODEV
Evet, tek sorun şudur: target.source-map aslında dir ile aynı şey değildir; gdb'nin pathname-substitution ayarına eşdeğerdir. Xcode tarafından sahne arkası değiştirmeleri kullanıldı ancak kullanıcılar normalde bunun farkında değildi. Bir noktada ldb'ye gdb'nin dir komutuna benzer bir komut eklememiz gerekecek. –
Bu cevaptan özlediğim tek şey, onu oluştururken hangi kaynak yolunun kullanıldığını bulmak olacaktır. Uzak bir makineye bağlanırsam, genellikle hangi yolun kullanıldığını bilmiyorum, umarım lldb'den kaynak dosyalarını bulmak için hangi yolda istediğini göstermesini isterim, bu yüzden doğru şekilde kaynak-harita oluşturabilirim. – lundman