-
Giriş
- Seer, Linux’ta
gdb için bir GUI ön uçtur ve kullanımı kolay, görsel olarak tatmin edici bir arayüz sunmayı amaçlar.
- Proje aktif olarak geliştirilmektedir; hatalar veya istenen özellikler e-posta ya da GitHub proje sayfası üzerinden bildirilebilir.
-
Kurulum
- Seer, paket yöneticisiyle veya kaynaktan kurulabilir.
-
Gereksinimler
- Linux, C++17,
gdb (mi yorumlayıcısı dahil), CMake (3.1.0 ve üzeri), QT6 gereklidir.
- QT6
devel paketinin kurulması gerekir.
- QT5 artık desteklenmiyor; 2.3 sürümü, onu destekleyen son kaynak ağacıdır.
-
Paketten kurulum
- Pamac (Manjaro) ve zypper (openSUSE Tumbleweed) üzerinden kurulabilir.
-
HABERLER
- En güncel bilgiler Seer’in GitHub Wiki sayfasında bulunabilir.
- v1.17 son Qt5 sürümüdür; bir sonraki sürüm, Qt6 tabanlı v2.0 olacaktır.
-
GUI genel bakış
-
Ana Görünüm
- Kaynak/fonksiyon/tür/değişken/kütüphane listeleri sunar.
- Değişken ve register bilgilerini gösterir.
- Kod yöneticisinde kaynak dosyalar görüntülenebilir ve aranabilir.
- Breakpoint, watchpoint, catchpoint ve printpoint yönetilebilir.
- Stack frame ve thread bilgilerini sunar.
- Gdb’nin tersine hata ayıklama modunu destekler.
-
Açma İletişim Kutusu
- Çalıştırılabilir dosya açılırken görülen iletişim kutusunu açıklar.
-
Seer Konsolu
- Çalıştırılabilir dosyanın tüm metin çıktısı Seer konsoluna yönlendirilir.
-
Assembly Görünümü
- Assembly kodu sekmeler halinde gösterilebilir.
- Yeni bir özelliktir; geri bildirim ve özellik önerileri yapılabilir.
-
Bellek Görselleştirici
- Belleğin ham içeriğini görselleştirir.
-
Dizi Görselleştirici
- Dizinin içeriğini X-Y grafiği olarak görselleştirir.
-
Struct Görselleştirici
- C/C++ struct veya class içeriğini görselleştirir.
-
Görsel Görselleştirici
- Görüntü biçimindeki ham bellek içeriğini görselleştirir.
-
Seer’i başlatma
- Komut satırından hata ayıklanacak programı kolayca başlatmak için tasarlanmıştır.
- Farklı çalıştırma yöntemleri GitHub Wiki’de görülebilir.
-
Destek/İletişim
- Hata ya da özellik talepleri e-posta veya GitHub proje sayfası üzerinden iletilebilir.
1 yorum
Hacker News görüşleri
Godot ve Linux üzerinde kullandığımda, arayüz karmaşık ama işlevsel. Değişken değerlerini kontrol etmeye çalışırken hata veriyor ya da hiçbir şey olmuyor. Bir değişkene çift tıklayınca mevcut değer ve zaman damgası panele ekleniyor. Gede en basit ve sezgisel arayüzü sunuyor; özellikleri daha az ama hatasız ve sorunsuz çalışıyor
GDB, yerleşik bir metin tabanlı kullanıcı arayüzü (TUI) içeriyor ve kullanımı kolay. Fare etkileşimini de destekliyor
Birden fazla GDB front-end'i denedim; en iyisi TUI. Program çıktı verdiğinde arayüz bozulabiliyor, bu yüzden
Ctrl + Lile yeniden çizmek gerekebiliyor. Yapılandırma dosyasınalayout srcveset confirm offekliyorumWindows'tan Linux'a bağlanırken veya WSL kullanırken, WinDBG/VisualStudio ile Linux süreçlerinde uzaktan hata ayıklama yapılabiliyor
GDB için Qt arayüzü ve web tabanlı arayüz olan gdbgui mevcut. Hata ayıklama araçlarının geliştiğini görmek her zaman güzel
DDD'yi ilk gördüğümde büyü gibi gelmişti. Hâlâ bakımı yapılıyor
Emacs kullanıcıları için GUD, GDB ile mükemmel bir entegrasyon sunuyor
C veya Ada hatalarını araştırırken ara sıra GDB kullanıyorum, ama asıl uğraşım bu değil. Bu yüzden karmaşık bir hata ayıklama ortamı kurmaya zaman harcamıyorum. Emacs ve basit notlar kullanıyorum
10 yıl önce Linux'ta C++ programlarken Qt Creator kullanıyordum ve yerleşik hata ayıklayıcı (GDB front-end'i) harika çalışıyordu. C++ ve Qt için başka bir şey kullanmak için bir nedenim yok