มี C ++ gdb GUI สำหรับ Linux หรือไม่ [ปิด]


210

สั้น ๆ : ไม่มีใครรู้ GUI สำหรับ gdb ที่นำมาใช้หรือใกล้เคียงกับคุณสมบัติที่คุณได้รับในเวอร์ชันล่าสุดของ Visual C ++

ในรายละเอียด: ในฐานะคนที่ใช้เวลาเขียนโปรแกรมใน Windows บล็อกที่มีขนาดใหญ่กว่าที่ฉันเคยพบเมื่อใดก็ตามที่ฉันต้องใช้รหัส C ++ ใน Linux คือการดีบักทุกอย่างโดยใช้ commandline gdb ทำให้ฉันใช้เวลานานกว่าหลายเท่า Visual Studio และดูเหมือนว่าจะไม่ได้ดีขึ้นด้วยการฝึกฝน บางสิ่งง่ายกว่าหรือเร็วกว่าในการแสดงภาพกราฟิก

โดยเฉพาะฉันกำลังมองหา GUI ที่:

  • จัดการพื้นฐานทั้งหมดเช่นการก้าวไปสู่โค้ดดูตัวแปรและเบรกพอยต์
  • ทำความเข้าใจและสามารถแสดงเนื้อหาของชนิดข้อมูล C ++ ที่ซับซ้อนและซ้อนกัน
  • ไม่สับสนโดยเฉพาะอย่างยิ่งสามารถก้าวผ่านรหัสเทมเพลตและโครงสร้างข้อมูลอย่างชาญฉลาดในขณะที่แสดงข้อมูลที่เกี่ยวข้องเช่นประเภทพารามิเตอร์
  • สามารถจัดการแอปพลิเคชั่นที่เป็นเธรดและสลับไปมาระหว่างเธรดต่างๆไปจนถึงขั้นตอนหรือดูสถานะของ
  • สามารถจัดการกับการแนบกับกระบวนการที่เริ่มทำงานแล้วหรืออ่านการถ่ายโอนข้อมูลหลักนอกเหนือจากการเริ่มโปรแกรมใน gdb

หากโปรแกรมดังกล่าวไม่มีอยู่ฉันก็อยากจะฟังเกี่ยวกับประสบการณ์ที่ผู้คนเคยมีกับโปรแกรมที่ตรงกับสัญลักษณ์แสดงหัวข้อย่อยอย่างน้อย ไม่มีใครมีคำแนะนำใด ๆ ?

แก้ไข: การแสดง
รายการความเป็นไปได้นั้นยอดเยี่ยมและฉันจะทำสิ่งที่ฉันสามารถทำได้ แต่มันจะมีประโยชน์มากกว่านี้หากคุณสามารถรวมไว้ในคำตอบของคุณ:
(a) ไม่ว่าคุณจะใช้ GUI นี้จริงหรือไม่ คุณมีข้อเสนอแนะในเชิงบวก / เชิงลบเกี่ยวกับเรื่องนี้
(b) ถ้าคุณรู้ว่าคุณลักษณะใดที่กล่าวถึงข้างต้นไม่รองรับ / ไม่รองรับ

รายการต่างๆนั้นง่ายต่อการเข้าถึงไซต์เช่นนี้ยอดเยี่ยมเพราะคุณสามารถรับความคิดเกี่ยวกับประสบการณ์ส่วนตัวของผู้คนด้วยแอปพลิเคชัน


21
+1 สำหรับ "ไซต์เช่นนี้ยอดเยี่ยมเพราะคุณสามารถรับความคิดเกี่ยวกับประสบการณ์ส่วนตัวของผู้คน" มีคนจำนวนมากเกินไปทุกวันนี้เพียงแค่ทำรายการทิ้งซึ่ง IMHO พลาดจุดไปอย่างสมบูรณ์
kizzx2



ดูรายการของ gdb front- end ได้ที่นี่: sourceware.org/gdb/wiki/GDB%20Front%20Endsและให้ภาพแรกในรายการ หน้าตามากมีแนวโน้มและทันสมัยและเป็นข้ามแพลตฟอร์มเพราะมันของเบราว์เซอร์: gdbgui.com
Gabriel Staples

คำตอบ:


55

คุณจะไม่พบสิ่งใดที่ซ้อนทับ GDB ซึ่งสามารถแข่งขันกับกำลังดิบของดีบักเกอร์ Visual Studio มันมีพลังมากเกินไปและมันรวมเข้าด้วยกันได้ดีภายใน IDE

สำหรับทางเลือกอื่นของ Linux ลองใช้ DDD ถ้าซอฟต์แวร์ของคุณเป็นของฟรี


2
WinDBG นั้นเหนือกว่าสิ่งที่ Visual Studio จัดหาให้ ดีบักเกอร์ visual Studio ตั้งอยู่บนสถาปัตยกรรมเดียวกันมากกว่า WinDBG จากที่กล่าวมา GDB ไม่มีอะไรให้ถามเมื่อเปรียบเทียบกับ Windbg ตัวดีบักแบบกราฟิกที่ดีกว่า DDD จะยอดเยี่ยม Eclipse CDT เป็นทางเลือกที่ดี ฉันคิดว่ามี KDE UI
bigmonachus

114
โอ้ดู คำตอบที่ทำให้การเรียกร้องโดยไม่สำรองข้อมูลเลย ฉันยังพบว่าแปลกที่คำตอบที่ไม่ตอบคำถามนั้นได้รับการยอมรับ
ทางเลือก

3
สำหรับทุกคนที่มาที่นี่เพื่อค้นหาคำตอบที่แท้จริงรู้ว่า ddd เป็นขยะ GUI debugger ที่ดีที่สุดสำหรับ Linux ที่ฉันพบคือ IDA ซึ่งไม่ใช่ซอฟต์แวร์ฟรี
bkconrad

1
ตอบคำถามให้ดีที่สุดหรืออย่าพูดอะไร หากใช้ทั้งสองอย่าง Visual Studio นั้นเต็มไปด้วยคุณสมบัติที่โดดเด่นกว่า แต่ DDD นั้นดีพอที่ฉันจะไม่พลาด VS น่าเศร้าที่ DDD กำลังแสดงอายุของมัน
Alan De Smet

6
โพสต์นี้จะต้องมีการปรับปรุง / ปรับปรุง ผู้สร้าง Qt ยอดเยี่ยมเทียบเท่ากับ Visual Studio
vharron

85

Eclipse CDT จะให้ประสบการณ์เทียบเท่ากับการใช้ Visual Studio ฉันใช้ Eclipse CDT ทุกวันสำหรับการเขียนโค้ดและการดีบักกระบวนการโลคัลและรีโมต

หากคุณไม่คุ้นเคยกับการใช้ IDE ที่ใช้ Eclipse GUI จะใช้เวลาเล็กน้อย อย่างไรก็ตามเมื่อคุณเข้าใจแนวคิด GUI ที่เป็นเอกลักษณ์ของ Eclipse (เช่นมุมมอง) การใช้เครื่องมือจะกลายเป็นประสบการณ์ที่ดี

เครื่องมือ CDT จัดทำดัชนี C / C ++ ที่เหมาะสมซึ่งช่วยให้คุณค้นหาการอ้างอิงถึงวิธีการต่างๆในฐานรหัสของคุณได้อย่างรวดเร็ว นอกจากนี้ยังมีเครื่องมือการขยายมาโครที่ดีและการสนับสนุนการปรับโครงสร้างที่ จำกัด

ด้วยความเคารพในการสนับสนุนการดีบัก CDT สามารถทำทุกอย่างในรายการของคุณได้ยกเว้นการอ่านการถ่ายโอนข้อมูลหลัก (อาจสนับสนุนการถ่ายโอนข้อมูลนี้ แต่ฉันไม่เคยลองใช้คุณสมบัตินี้) นอกจากนี้ประสบการณ์ของฉันเกี่ยวกับรหัสการดีบักโดยใช้เทมเพลตมี จำกัด ดังนั้นฉันจึงไม่แน่ใจว่า CDT จะให้ประสบการณ์แบบใดในเรื่องนี้

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการดีบักโดยใช้ Eclipse CDT คุณอาจต้องการดูคำแนะนำเหล่านี้:


10
รองรับการอ่านที่ทิ้งหลัก (มันเรียกว่าการดีบักเกอร์ชันสูตรศพ.)
จอชเคลลี่

ฉันมีประสบการณ์ที่ดีขึ้นในการดีบัก Eclipse CDT มากกว่าใน Visual Studios ฉันไม่ได้ให้โอกาส MSVC มากเกินไป
notlesh

3
ฉันคิดว่าQtCreatorควรพูดถึงข้าง Eclipse เพราะมันเปรียบได้
nonsensickle

78

gdb -tui ทำงานได้ดีถ้าคุณต้องการบางสิ่งบางอย่าง GUI-ish แต่ยังคงเป็นตัวละคร


45
คุณยังสามารถเข้าสู่โหมด TUI (text user interface) ในขณะที่อยู่ใน gdb โดยใช้คำสั่ง '-' กลับไปที่พรอมต์คำสั่งคือ Ctrl-X Ctrl-A ขณะที่อยู่ในโหมด TUI เลื่อนขึ้นลงซ้ายและขวาผ่านแหล่งที่มา ใช้ Ctrl-P, Ctrl-N, Ctrl-F และ Ctrl-B เพื่อนำทางในประวัติบรรทัดคำสั่ง
Ben Combee

นี่คือสิ่งที่ฉันกำลังมองหา พลังของบรรทัดคำสั่ง gdb พร้อมด้วยมุมมองที่เป็นประโยชน์บางอย่างที่อัพเดตเมื่อฉันเลื่อนไป
Kevin Cox

7
. gdbinit บน steriods ให้ตัวละครตาม GUI ที่น่าประทับใจด้วยสี: github.com/cyrus-and/gdb-dashboard
cs01

ฉันค่อนข้างชอบgdb-dashboardแต่ต้องพูดถึงvoltronด้วย
nonsensickle

3
@ Barry ขอบคุณ สำหรับทุกคนที่อยากรู้อยากเห็นที่นี่คือการเชื่อมโยง: github.com/cs01/gdbgui แต่ก็มีการแสดงผลข้อมูลโครงสร้างคล้ายกับ DDD, สถาปัตยกรรมลูกค้า / เซิร์ฟเวอร์เพื่อให้ง่ายต่อการแก้ปัญหาเครื่องจากระยะไกลโดยไม่มีการส่งต่อ X จำเป็นและความสามารถในการสำรวจตัวแปรที่ซับซ้อน ฯลฯ ..
CS01

47

ตรวจสอบNemiver C / C ++ ดีบักเกอร์ ง่ายต่อการติดตั้งใน Ubuntu (เครื่องมือสำหรับนักพัฒนา / การดีบัก)

อัพเดท:ลิงค์ใหม่


เยี่ยมอย่างแท้จริงรองรับกับ apt: 'apt-get install nemiver' เล่นโวหารเดียวของฉันคือการสร้างจาก repo ล้มเหลวเนื่องจาก 'ไม่พบแพคเกจ gconf-2.0'
J Evans

ส่วนต่อประสานค่อนข้างชัดเจนและอ่านได้ดี แต่บางครั้งก็ขัดข้องในขณะที่ใช้ความสามารถของส่วนต่อประสาน v0.9.6 นอกจากนี้ยังยอมรับพารามิเตอร์แอปพลิเคชันที่ดีบั๊กสิ่งที่ฉันยังไม่สามารถให้ ddd ทำได้
กุมภ์

มีให้บริการใน Fedora 30 (อย่างน้อย) ฉันเพิ่งบังเอิญกับคำถามนี้และผู้ส่งเงิน
user3236841

31

Qt Creator ดูเหมือนจะเป็นสิ่งที่ดี เพื่อนร่วมงานแสดงให้ฉันเห็นวิธีหนึ่งในการตั้งค่าสำหรับการดีบัก:

  • สร้างโครงการใหม่ "นำเข้าโครงการที่ใช้ Makefile"
  • ชี้ไปที่โฟลเดอร์โครงการรูทของคุณ (มันจะทำดัชนีแหล่งที่มาภายใต้มันและมันรวดเร็วอย่างน่าประทับใจ)
  • ไปที่การตั้งค่าโครงการและเพิ่มการกำหนดค่าการทำงานจากนั้นระบุไฟล์ปฏิบัติการที่คุณต้องการดีบักและอาร์กิวเมนต์
  • Qt Creator ดูเหมือนจะยืนยันในการสร้างโครงการของคุณก่อนที่จะทำการดีบั๊ก หากคุณไม่ต้องการหรือไม่ใช้ make เพียงไปที่โครงการ -> build (แผงด้านซ้าย) จากนั้นบนแผงด้านขวาใน "Build Steps" ลบขั้นตอนทั้งหมดรวมถึงขั้นตอนโดยค่าเริ่มต้นเมื่อ คุณสร้างโครงการ

นั่นอาจดูเหมือนเป็นการทำงานที่ดีมากสำหรับการดีบักแอพที่ฉันได้รวบรวมมาแล้ว แต่มันก็คุ้มค่า ดีบักเกอร์แสดงเธรดสแต็คและตัวแปรในตัวเครื่องในลักษณะที่คล้ายกับ Visual Studio และใช้แป้นพิมพ์ลัดที่เหมือนกันหลายตัว ดูเหมือนว่าจะจัดการแม่แบบได้ดีอย่างน้อย std :: string และ std :: map ดูเหมือนว่าจะได้รับการสนับสนุนแม้ว่าจะยังไม่ได้ทำการทดสอบ

โปรดทราบว่าตอนนี้ฉันใช้งานไม่ถึงชั่วโมง แต่ฉันก็ประทับใจมาก


29

ฉันไม่ชอบความคิดในการพัฒนา Windows แต่ตัวแก้จุดบกพร่อง VC ++ เป็นหนึ่งในสิ่งที่ดีที่สุดที่ฉันเคยเห็น ฉันไม่พบส่วนหน้า GUI ที่ใกล้เคียงกับ VC

GDB นั้นยอดเยี่ยมเมื่อคุณคุ้นเคยกับมันจริงๆ ใช้มันด้วยความโกรธมากพอและคุณจะเก่งมาก ฉันสามารถส่งโปรแกรมทำทุกสิ่งที่คุณระบุไว้โดยไม่ต้องใช้ความพยายามอีกต่อไป มันใช้เวลาหนึ่งเดือนหรือมากกว่านั้นที่จะต้องทนทุกข์ทรมานกับลิงค์ SSH ไปยังเซิร์ฟเวอร์ระยะไกลก่อนที่ฉันจะชำนาญ ฉันจะไม่กลับไปแม้ว่า

DDD นั้นทรงพลังจริงๆ แต่มันค่อนข้างบั๊ก ฉันพบว่ามันแข็งตัวขึ้นบ่อยครั้งเมื่อได้รับข้อความจาก GDB ว่ามันไม่ได้สั่นคลอน เป็นเรื่องที่ดีเพราะมันมีหน้าต่างอินเตอร์เฟส gdb เพื่อให้คุณสามารถเห็นสิ่งที่เกิดขึ้นและยังโต้ตอบกับ gdb โดยตรง DDD ไม่สามารถใช้กับเซสชัน X ระยะไกลในสภาพแวดล้อมของฉันได้ (เป็นปัญหาจริงเนื่องจากฉันนั่งอยู่ที่ไคลเอ็นต์บางเมื่อฉันทำ Unix dev) ด้วยเหตุผลบางอย่างดังนั้นมันจึงออกมาสำหรับฉัน

KDevelop ตามสไตล์ KDE ทั่วไปและเปิดเผยทุกอย่างกับผู้ใช้ ฉันไม่เคยโชคดีในการดีบักโปรแกรมที่ไม่ใช่ KDevelop ใน KDevelop

Gnat Programming Studio (GPS) จริงๆแล้วเป็น front-end ที่ดีของ GDB ไม่เพียงจัดการโครงการ Ada เท่านั้นดังนั้นจึงควรทดลองใช้หากคุณต้องการดีบัก

คุณสามารถใช้ Eclipse ได้ แต่มันค่อนข้างหนักและคน Unix ที่มีประสบการณ์มากมายที่ฉันทำงานด้วย (รวมอยู่ด้วย) ไม่สนใจอินเตอร์เฟสมากนักซึ่งไม่เพียงแค่ STFU และออกไปให้พ้นทางคุณ Eclipse ดูเหมือนจะกินเนื้อที่มากและวิ่งเหมือนสุนัข


2
แค่อยากจะโปรเจ็คต์ของฉัน gdbgui ( github.com/cs01/gdbgui ) มันเป็นสถาปัตยกรรมไคลเอนต์ / เซิร์ฟเวอร์ดังนั้นทำงานได้ดีในการดีบักเครื่องระยะไกลโดยไม่ต้องใช้เซสชัน X นอกจากนี้ยังมีเทอร์มินัลเพื่อโต้ตอบโดยตรงกับ GDB และมีภาพแสดงโครงสร้างข้อมูลคล้ายกับ DDD
cs01

เปรียบเทียบกับข้อดีข้อเสียตามประสบการณ์ สิ่งที่คำถามนี้ต้องการ ty
Heath Raftery


16

ฉันใช้ DDD เป็นจำนวนมากและมันก็ค่อนข้างทรงพลังเมื่อคุณเรียนรู้ที่จะใช้มัน สิ่งหนึ่งที่ฉันจะบอกคือไม่ได้ใช้งานผ่าน X มากกว่า WAN เพราะดูเหมือนว่าจะทำการปรับปรุงหน้าจอที่ไม่จำเป็นจำนวนมาก

นอกจากนี้หากคุณไม่ได้แต่งงานกับ GDB และไม่รังเกียจที่จะจ่ายเงินสดสักเล็กน้อยฉันก็ลองใช้ TotalView มันมีเส้นโค้งการเรียนรู้ที่สูงชันเล็กน้อย (มันสามารถใช้งานได้ง่ายกว่าเดิมมาก) แต่เป็นดีบั๊ก C ++ ที่ดีที่สุดที่ฉันเคยใช้บนแพลตฟอร์มใด ๆ รายการ STL เป็นรายการวัตถุจริงและไม่ทำให้สมาชิกข้อมูลภายในสับสน ฯลฯ )


ฉันไม่สามารถทำให้ DDD ทำงานกับ remote X ได้เลย เพียงแค่เกิดปัญหาการมีข้อผิดพลาดใน Xlib ลูกค้าบางของฉัน :(
อดัมฮาร์เวส

totalview ดูเหมือนเป็นทางเลือกที่ทำงานได้ ฉันไม่คิดว่า DDD จะดีกว่าอินเทอร์เฟซ gdb curses
deft_code

8

ตรวจสอบโครงการ Eclipse CDT มันเป็นปลั๊กอินสำหรับ Eclipse ที่มุ่งเน้นการพัฒนา C / C ++ และรวมถึงมุมมองการดีบักที่มีคุณลักษณะมากมาย (ซึ่งอยู่เบื้องหลังใช้ GDB) มันมีอยู่ในแพลตฟอร์มที่หลากหลาย


7

ความสะดวกสบายที่คล้ายกับ eclipse gdb frontend คือ emacs frontend ที่เชื่อมโยงกับ emacs IDE อย่างแน่นหนา หากคุณทำงานกับ emacs อยู่แล้วคุณจะชอบ:

GDB Emacs Frontend



6

ฉันใช้ KDbg (ทำงานภายใต้ KDE เท่านั้น)


3
KDbg ไม่จำกัด KDE
nobar

นั่นคือที่น่ากลัว ฉันสงสัยว่ามันจะอยู่ที่ไหนตลอดเวลานี้
edmz

5

ฉันได้ลอง guis ที่แตกต่างกันสองสามตัวสำหรับ gdb และพบว่า DDD นั้นดีกว่าของพวกเขา และในขณะที่ฉันไม่สามารถออกความเห็นเกี่ยวกับข้อเสนออื่น ๆ ที่ไม่ใช่ gdb สำหรับ linux ฉันได้ใช้ debuggers อื่น ๆ จำนวนมากบนแพลตฟอร์มอื่น ๆ

gdb ทำสิ่งที่คุณมีเป็นส่วนใหญ่ในรายการสินค้าที่ต้องการ DDD วางด้านหน้าที่ดีกว่าไว้ ตัวอย่างเช่นการสลับเธรดทำได้ง่ายขึ้น การตั้งค่าเบรกพอยต์นั้นง่ายอย่างที่คุณคาดหวัง

คุณยังได้รับหน้าต่าง cli ในกรณีที่มีบางสิ่งที่คลุมเครือที่คุณต้องการจะทำ

คุณสมบัติหนึ่งของ DDD ที่โดดเด่นเหนือกว่า debugger อื่น ๆ ที่ฉันใช้คือข้อมูล "กราฟ" สิ่งนี้ช่วยให้คุณสามารถแสดงและจัดเรียงโครงสร้างวัตถุและหน่วยความจำเป็นกล่องที่ลากได้ การคลิกสองครั้งที่ตัวชี้จะเป็นการเปิดข้อมูลที่ยกเลิกการอ้างอิงพร้อมลิงก์ภาพกลับไปที่หน้าหลัก


ddd ทำงานกับโปรแกรมที่มีอาร์กิวเมนต์หรือไม่ ฉันไม่สามารถผ่านการโต้แย้ง ...
user3236841

ถ้าฉันจำถูกต้อง DDD สามารถมอบหน้าต่างคอนโซลให้กับ GDB ได้โดยตรง ในคอนโซล GDB คุณสามารถตั้งค่าอาร์กิวเมนต์บรรทัดคำสั่งโดยใช้คำสั่ง "set args xyz abc"
Andrew Edgecombe

5

Qt Creator-on-Linux นั้นเทียบเท่ากับ Visual Studio-on-Windows สำหรับ C ++ ทุกวันนี้ ฉันจะบอกว่าดีกว่าในด้านการดีบัก


5

มีอยู่คนหนึ่ง IDE ที่ขาดหายไปในรายการนี้และที่มีประสิทธิภาพมากเป็น (ผมเคยใช้มันในหลาย C / C ++ โครงการโดยไม่มีปัญหาใด ๆ ): Netbeans


ฉันชอบ cgdb อย่างมากในตอนนี้ที่ฉันคุ้นเคยกับมัน แต่ Netbeans ช่างเป็นหินที่ดีเยี่ยมจาก VS
zzxyz

3

สิ่งที่สามารถก้าวผ่านไปได้นั้นจะถูก จำกัด โดยข้อมูลการดีบักที่ g ++ สร้างขึ้นในระดับสูง Emacs ให้ส่วนต่อประสานกับ gdb ที่ให้คุณควบคุมผ่านแถบเครื่องมือ / เมนูและแสดงข้อมูลในหน้าต่างแยกต่างหากรวมถึงพิมพ์คำสั่ง gdb โดยตรง CDT ของ Eclipse มีเครื่องมือที่คล้ายกัน ฉันเคยได้ยิน Anjuta และ Code :: Blocks แต่ไม่เคยใช้


3

ในฐานะที่เป็นคนที่คุ้นเคยกับ Visual Studio ฉันได้ดู IDE ของโอเพ่นซอร์สหลายรายการเพื่อแทนที่และ KDevelop เป็น IMO ที่ใกล้เคียงที่สุดเพื่อเป็นสิ่งที่บุคคล Visual C ++ สามารถนั่งลงและเริ่มใช้งานได้ เมื่อคุณเรียกใช้โครงการในโหมดการดีบักจะใช้ gdb แต่ kdevelop ค่อนข้างจัดการกับสิ่งทั้งหมดเพื่อให้คุณไม่ต้องรู้ว่ามันเป็น gdb; คุณเพียงแค่ก้าวเดียวหรือกำหนดนาฬิกาให้กับตัวแปร

มันยังไม่ดีเท่ากับตัวดีบัก Visual Studio โชคไม่ดี


3

คุณไม่ต้องพูดถึงว่าคุณใช้ Windows หรือ UNIX

สำหรับระบบ UNIX KDevelopนั้นดี แต่ฉันใช้KDbgเพราะมันใช้งานง่ายและจะทำงานกับแอพที่ไม่ได้พัฒนาใน KDevelop

Eclipseนั้นดีสำหรับทั้งสองแพลตฟอร์ม

สำหรับ Windows นั้นมีแพ็คเกจที่ยอดเยี่ยมที่เรียกว่าWascana Desktop Developerซึ่งเป็น Eclipse CDT และ MinGW ซึ่งทุกแพ็คเกจถูกบรรจุและกำหนดค่าไว้ล่วงหน้าเพื่อความเจ็บปวดขั้นต่ำ มันเป็นสิ่งที่ดีที่สุดที่ฉันพบในการพัฒนาโค้ด GNU บน Windows

ฉันใช้ดีบั๊กเหล่านี้แล้วและไม่มีใครเก่งเท่า MS Dev Studio Eclipse / Wascana น่าจะใกล้เคียงที่สุด แต่ก็มีข้อ จำกัด เช่นคุณไม่สามารถก้าวเข้าสู่ DLLs ได้และมันก็ทำงานได้ไม่ดีนักในการตรวจสอบตัวแปร


3

คุณเคยดูDS-5 ดีบักไหม?

มีรุ่นที่ต้องชำระเงินซึ่งมีคุณสมบัติที่มีประโยชน์มากมาย แต่คุณยังสามารถใช้ Community Edition ได้ฟรี (ซึ่งค่อนข้างมีประโยชน์โดยเฉพาะอย่างยิ่งสำหรับระบบฝังตัว)

ฉันมีประสบการณ์ที่ดีกับเครื่องมือนี้เมื่อทำการดีบั๊กแอปพลิเคชัน Android บนอุปกรณ์จริงโดยใช้ eclipse



2

VisualGDBเป็นอีกปลั๊กอินของ Visual Studio เพื่อพัฒนาและแก้ไขข้อบกพร่องของแอปพลิเคชันบน linux และแพลตฟอร์มแบบฝัง



1

คุณลอง gdb -w กับ cygwin gdb แล้วหรือยัง มันเป็นเรื่องแปลกที่จะมีส่วนต่อประสานกับ windows ซึ่งทำงานได้ค่อนข้างดี

ปัญหาเดียวที่ฉันพบคือในเครื่องปัจจุบันของฉันมันไม่ทำงานจนกว่าจะหลังจากที่ฉันติดตั้ง ddd ฉันสงสัยว่าต้องใช้ tcltk ซึ่งติดตั้งเมื่อฉันติดตั้ง ddd




0

ในช่วง 15 เดือนที่ผ่านมาฉันใช้ข้อมูลเชิงลึก (มาพร้อมกับ FC6) มันไม่ดีมันเขียนใน Tcl / Tk แต่มันง่ายและมีประโยชน์ DDD มีคุณภาพ / ยูทิลิตี้ที่คล้ายกัน แต่ค่อนข้างยากที่จะใช้ (gotchas GUI และการละเว้นต่าง ๆ ) ฉันยังพยายามรวม gdb กับ IDE, SlickEdit ของฉัน มันใช้งานได้ดี (ฉันเล่นไป 4 ชั่วโมง) แต่ฉันไม่ชอบสวิตช์บริบทของ GUI ฉันชอบ IDE ของฉันที่จะไม่เปลี่ยนแปลงในขณะที่ฉันกำลังดีบั๊ก บน Windows ฉันใช้ SlickEdit สำหรับ IDE และ Visual Studio Debugger สำหรับการดีบัก ดังนั้นจาก 3: Insight, DDD และ SlickEdit, Insight เป็นตัวเลือกแรกของฉันฉันใช้มัน> 95% ของเวลา, บรรทัดคำสั่ง gdb และ DDD เป็นอีก 5% หากฉันมีโอกาสฉันจะประเมิน Eclipse ในบางจุดพีซีที่ทำงานของฉันดูเหมือนจะมี RAM ไม่เพียงพอ (1GB เท่านั้น) เพื่อให้ Eclipse ทำงานได้ดีพอสมควร

ฉันเคยได้ยินคำชมเชยจาก TotalView มากมายรวมถึงมือแรกในระหว่างการสัมภาษณ์งาน ฉันได้รับ eval สำหรับ บริษัท ของเราในปลายปี 2551 แต่ในที่สุดเราก็ไม่ได้ดำเนินการเพราะ gdb นั้นดีพอสำหรับความต้องการของเรา และเป็นอิสระและแพร่หลาย



0

ฉันกำลังค้นหาตัวดีบั๊กเพื่อไปยังโปรแกรมที่กำลังทำงานอยู่ พูดว่า: แนบ โปรแกรมนี้ถูกสร้างด้วย eclipse แต่อาจเป็นเพราะมีบางสิ่งกีดขวางแบบมัลติเธรดทำให้ไม่มีไฟล์ต้นฉบับที่ชอบ สิ่งที่เคย

ฉันพอใจกับ NetBeans มาก

  • [debug] จากเมนู -> แนบ Deugger ...
  • เป็นกระบวนการเลือกหนึ่งที่จะแก้ปัญหา
  • เป็นโครงการ [โครงการใหม่]

ตอนนี้หน้าต่างจะหายไปและคุณไม่เห็นอะไรเลย แยกออกจากกระบวนการ Read Square "Stop" ช่วย

  • แหล่งนำเข้าจากโครงการเช่นโฟลเดอร์ " ... / MyProject / src
  • ตอนนี้มันปรากฏในโครงการของคุณและคุณสามารถกำหนดจุดพัก
  • ดีบัก ttach อีกครั้ง
  • เลือกกระบวนการที่จะดีบั๊ก
  • ดีบักเกอร์ควรหยุดถ้า programm ถึงจุดพักต่อไป

ไปที่ [หน้าต่าง] -> [การดีบั๊ก] -> หน้าต่างของคุณจะทำให้สบายขึ้นหรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.