คำถามติดแท็ก valgrind

30
Valgrind ใช้แทน Windows ได้ดีหรือไม่?
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันกำลังมองหา Valgrind เพื่อช่วยปรับปรุงการเข้ารหัส / การดีบัก C ของฉันเมื่อฉันค้นพบว่ามันเป็นเพียงสำหรับ Linux - ฉันไม่มีความต้องการหรือความสนใจในการย้ายระบบปฏิบัติการของฉันไปยัง Linux ดังนั้นฉันสงสัยว่ามีโปรแกรมที่ดีสำหรับ Windows

4
ฉันจะใช้ valgrind เพื่อค้นหาหน่วยความจำรั่วได้อย่างไร
ฉันจะใช้ valgrind เพื่อค้นหาหน่วยความจำรั่วในโปรแกรมได้อย่างไร โปรดใครสักคนช่วยฉันและอธิบายขั้นตอนในการดำเนินการตามขั้นตอนหรือไม่ ฉันใช้ Ubuntu 10.04 และฉันมีโปรแกรมa.cโปรดช่วยฉันด้วย
183 c  valgrind 

2
การระบุ“ การกระโดดหรือย้ายตามเงื่อนไขขึ้นอยู่กับข้อความที่ไม่ได้เตรียมค่า” valgrind
ดังนั้นฉันจึงได้รับข้อความที่ไม่ได้กำหนดค่าเริ่มต้นจาก valgrind และมันค่อนข้างลึกลับซึ่งเป็นที่มาของค่าที่ไม่ดี ดูเหมือนว่า valgrind แสดงให้เห็นถึงสถานที่ที่มีการใช้ค่า unitialised แต่ไม่ใช่ที่มาของค่าเริ่มต้น ==11366== Conditional jump or move depends on uninitialised value(s) ==11366== at 0x43CAE4F: __printf_fp (in /lib/tls/i686/cmov/libc-2.7.so) ==11366== by 0x43C6563: vfprintf (in /lib/tls/i686/cmov/libc-2.7.so) ==11366== by 0x43EAC03: vsnprintf (in /lib/tls/i686/cmov/libc-2.7.so) ==11366== by 0x42D475B: (within /usr/lib/libstdc++.so.6.0.9) ==11366== by 0x42E2C9B: std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > …
166 c++  valgrind 

5
ยังรั่วไหลได้ที่ตรวจพบโดย Valgrind
ฟังก์ชั่นทั้งหมดที่กล่าวถึงในบล็อกนี้เป็นฟังก์ชั่นห้องสมุด ฉันจะแก้ไขการรั่วไหลของหน่วยความจำนี้ได้อย่างไร มันอยู่ภายใต้หมวดหมู่" ยังเข้าถึงได้ " (มีอีก 4 ซึ่งคล้ายกันมาก แต่มีขนาดแตกต่างกัน) 630 bytes in 1 blocks are still reachable in loss record 5 of 5 at 0x4004F1B: calloc (vg_replace_malloc.c:418) by 0x931CD2: _dl_new_object (dl-object.c:52) by 0x92DD36: _dl_map_object_from_fd (dl-load.c:972) by 0x92EFB6: _dl_map_object (dl-load.c:2251) by 0x939F1B: dl_open_worker (dl-open.c:255) by 0x935965: _dl_catch_error (dl-error.c:178) by 0x9399C5: _dl_open …
155 c  pthreads  valgrind 

3
จะเปลี่ยนเส้นทางการส่งออกของ Valgrind ไปยังไฟล์ได้อย่างไร?
ในขณะที่ทำงานกับเครื่องมือ Valgrind ฉันต้องบันทึกรายละเอียดที่สร้างโดยเครื่องมือ valgrind ฉันจะทำให้สำเร็จได้อย่างไร ฉันพยายามทำบางสิ่งเช่น valgrind a.out | test และ valgrind a.out > test มันให้ผลลัพธ์ของโปรแกรมไม่ใช่ข้อผิดพลาดของหน่วยความจำ valgrind ข้อมูลการรั่วไหล แม้ว่าฉันจะได้รับเช่นนี้หากโปรแกรมไม่ต้องการการโต้ตอบกับผู้ใช้ (เช่นให้อินพุต) หากโปรแกรมต้องการการป้อนข้อมูลจากผู้ใช้แม้สิ่งนั้นจะไม่ทำงาน ฉันจะทำสิ่งนี้ได้อย่างไร
147 redirect  valgrind 

12
Yosemite และ Valgrind
ช่วยบอกวิธีการติดตั้ง valgrind บน yosemite ได้ไหม? เมื่อฉันพยายามติดตั้งฉันได้รับ "การตรวจสอบเวอร์ชันเคอร์เนล ... ไม่รองรับ (14.0.0) กำหนดค่า: ข้อผิดพลาด: Valgrind ทำงานบน Darwin 10.x, 11.x, 12.x และ 13.x (Mac OS X 10.6 / 7/8/9)” ไม่มีเส้นทางหรือการอัปเดตอย่างเป็นทางการและฉันไม่พบอะไรเลย (ยกเว้นhttp://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705แต่ไม่สามารถแก้ไขปัญหานั้นได้)

3
มีวิธีการติดตั้ง Valgrind บน Catalina หรือไม่?
มีวิธีการติดตั้ง Valgrind บน Catalina และให้มันทำงานอย่างถูกต้องหรือไม่? ถ้าเป็นเช่นนั้นฉันจะขอบคุณกระบวนการทีละขั้นตอน ฉันพยายามติดตั้ง Valgrind ด้วยhttps://github.com/sowson/valgrind แต่เมื่อฉันทดสอบhelloWorld.cppบนเทอร์มินัลคอนโซลคืนข้อผิดพลาดที่ฉันไม่ควรได้รับ ฉันไม่แน่ใจว่าฉันยอมรับข้อผิดพลาดในส่วนของฉันในกระบวนการติดตั้งของรุ่น Valgrind นี้หรือหากตัวเอง Valgrind ไม่เข้ากันกับ Catalina OS ฉันได้ลองติดตั้ง Valgrind ผ่าน Homebrew แล้ว แต่ฉันก็มีปัญหาเช่นกัน (github.com/Homebrew/homebrew-core/issues/36683)

3
จะติดตั้ง Valgrind บน macOS Catalina (10.15) ด้วย Homebrew ได้อย่างไร?
ฉันพยายามติดตั้ง Valgrind ด้วยคำสั่ง brew ติดตั้ง Valgrind และฉันได้รับข้อความแจ้งว่า: "valgrind: สูตรนี้อาจไม่มีการคอมไพล์หรือทำงานตามที่คาดหวังในรุ่น macOS ที่ใหม่กว่าเซียร์ราเนื่องจากความเข้ากันไม่ได้ของอัปสตรีมข้อผิดพลาด: ข้อกำหนดที่ไม่พอใจทำให้ล้มเหลวในโครงสร้างนี้" ฉันยังพยายาม "ชงแก้ไข valgrind" และแทนที่ "sourceware.org/git/valgrind.git" ด้วย "git: //sourceware.org/git/valgrind.git" ในส่วนหัวของรหัสแล้วเขียนลงใน Iterm " brew install --HEAD valgrind"แต่มันทำให้ฉัน: Last 15 lines from /Users/m/Library/Logs/Homebrew/valgrind/02.configure: checking for gcc-ar... no checking for perl... /usr/bin/perl checking for gdb... /no/gdb/was/found/at/configure/time checking dependency style of clang... none …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.