ile Xcode 4.3'deki garip hata mesajı Şu anda Xcode 4.3.2 ile bir iOS uygulaması yazıyorum. Kodumun çoğunda LLDB ile hata ayıklama işlemi gayet iyi çalışıyor. Ancak bir noktada, koduma girerken garip bir mesaj alıyorum. Bana değer göstermek yerine Objective-C dolaylı ivar sembolü OBJC_IVAR _ $ _ MyFancyClass.iVarLLDB
bulunamadı: Bir Ivar üzerine geldiğinizde, o
Hata [IRForTarget] diyor. Ancak,
Variables View
’da, bunu gayet iyi görebilirim. BenPrint Description of ...
seçiyorum kadar, çünkü o zaman, Xcode çöker ... GDB kullandığımda, gezinme çalışır ancak değişkenin türü ve değerleri yanlıştır.Kodumda hata ayıklayıcıların başarısız olmasına neden olan bir sorun olduğunu onaylıyorum. Ancak, kod düzgün çalışır. Bazı örnek kodları vermeyi çok isterdim, ancak sınıf oldukça uzun ve benim mahzurun tam yerini kesin olarak belirleyemiyorum. Yani benzer bir davranışla karşılaştı mı?
GÜNCELLEME: Aslında, bu, kodumdaki her yerde, yalnızca belirli dosyalarda değil gibi görünüyor. Eğer LLDB yukarıdaki mesajı gösterirse, GDB her zaman, iVar'ın kendisi yerine, iVar'a sahip olan Sınıfın bir nesnesini gösterir. Bellek yönetiminde bir sorun varmış gibi görünüyor. Mesela ben
[notificationCenter addObserver:self selector:@selector(foo) name:bar object:objA];
seçici gibi bir şey ben
[notificationCenter postNotificationName:bar object:objB];
Sizin kodunuz uzun olabilir, ancak bununla yeterince insanın karşılaşmadığı görülüyor. Bu davranışın gerçekleştiği bazı kodların özetlenmiş bir sürümünü gösterebilir misiniz? –
Kodumda kesinlikle her yerde olduğu için, aslında ne yazabileceğimi bilmiyorum ... – Phlibbo
Sadece tahmin ediyorum, bu yüzden bir cevap göndermiyorum, ancak hata ayıklayıcısını kullanmayı denediğinizde ne olur? konsol ve "po" kullanarak nesneyi yazdırmak? Ayrıca, muhtemelen herhangi bir özel gdb yapılandırması yeriniz var mı? Bu, hata ayıklamaya çalıştığınız bir kitaplık mı? Hata ayıklama bilgisini etkin mi oluşturuyorsunuz? Derleme ayarlarınızı iki kez kontrol edin (hata ayıklama sembollerini, optimizasyon seviyesini, hata ayıklama bilgi formatını yaratın). –