Free Debuggers, Static Source Code Analysis Tools, Bug Trackers
Source code checkers, static code analysis utilities (Lint), debugging tools, trace, monitoring
Free Debugging Tools, Static Source Code Analysis Utilities, Bug Trackers
Get rid of unwanted and unexpected features (a.k.a. "bugs") in your programs. Listed here are debuggers, static source code analyzers or static source code checkers (like lint, that scan your source code for suspicious constructs that might be a bug waiting to happen), debugging tools (like strace that traces a system call), API wrappers (that wrap calls to system libraries so that you can check for valid parameters/arguments in system calls), as well as bug trackers (or "issue trackers" if you are particularly sensitive to the word "bug") which allow you to keep track of bug reports from users and the status of the bugs.
If you want resource leak checkers (looks for resource leaks), memory leak detectors and heap checkers (to check the integrity of your heap), libraries for unit testing please check the Free Debugging Source Code, Libraries and Object Modules page instead.
Related Pages
- How to Create / Start Your Own Website: The Beginner's A-Z Guide - give your software a home
- Free 3D Software Box Image Makers
- Free Assemblers and Linkers - for those low-level, time critical tasks
- Free Disassemblers, Binary and Hexadecimal Viewers and Editors
- Free Help Authoring Tools
- Free Installers and Setup Utilities
- Free Source Code Version Control Software
- Free DOS Extenders
- Free Programmers' Editors and IDEs
- Free Compiler Construction Tools: Lexers, Parser Generators, Optimizers
- Free Sockets and Winsock Libraries - Internet-enable your applications
Disclaimer
The information provided on this page comes without any warranty whatsoever. Use it at your own risk. Just because a program, book, document or service is listed here or has a good review does not mean that I endorse or approve of the program or of any of its contents. All the other standard disclaimers also apply.
Free Static Source Code Analyzers (Static Source Code Analysis Tools) or Lint Utilities
- Splint / LCLint (Lint - static source code analysis tool)
Splint (formerly LCLint) is a rewrite of the famous Unix lint utility. It is a static source code analyser, that checks your C program source code for bugs and potential problems. This static source code analysis tool requires a certain amount of configuration before you can use it productively. There are versions for a number of operating systems, including Win32, Linux and other Unix systems.
- Ftncheck (Lint utility / Static Source Code Analysis Utility for Fortran)
ftncheck, a static source code analysis utility, checks your Fortran programs for semantic errors, leaks and potential bugs. For example, you can use ftncheck to scan your program for the use of uninitialized variables and undeclared variables.
- Jlint: Java Program Checker (Lint)
Like the lint utility which checks C programs, jlint is a static source code analysis tool that scrutinizes your Java source code for suspicious constructs that might indicate a program bug. Although the program is shareware, it is distributed with source code without any restrictions (and hence is listed here).
Free Debuggers, API Wrappers, System Tracers, Bug Trackers
- Bugzilla Bug Tracking System
Bugzilla is a defect tracking system that allows programmers to track the status of bugs in their applications. It is probably one of the most well-known open source bug tracking systems around. It is configurable, includes "advanced reporting capabilities", supports inter-bug dependencies, etc. It is written in Perl and is licensed under the Mozilla Public License.
- Valgrind
Valgrind is an x86 Linux debugger and profiler. It includes tools for detecting memory management errors (such as the use of uninitialised memory, use of memory after it has been freed, writing to areas of the stack that you should not write to, memory leaks, passing unitialised or unaddressable memory to system calls, reading or writing beyond the end of malloc'd blocks, misuse of POSIX threads API, mismatched memory allocation calls, overlapping source and destination pointers for memcpy() and related functions, etc), a cache profiler, and a thread debugger which is able to help you detect data races in multithreaded programs.
- Microsoft Debugging Tools for Windows 32-bit Version
WinDbg, included in the package, is a source level debugger with a graphical interface that allows you to debug both user-mode and kernel-mode code. You can view source code, set breakpoints, view variables including C++ objects, do stack traces, etc. It supports remote debugging, which is required if you are debugging kernel-mode code, but which may also be used to debug user-mode code. There are separate versions for the NT family (Windows NT 4, 2000, XP, Windows Server 2003) and the 9x family (only Windows ME is supported). You can debug both x86 and Itanium applications, services, drivers and the Windows kernel. The Debugging Tools for Windows Me is available separately.
- UPS Debugger
This is actually a graphical source level debugger for X Window, but it contains a built in C interpreter which can handle single or multiple source files. You can use it to build a byte-code executable and execute the interpreter on that executable. If you need an interpreter to debug or prototype programs, or to just learn the language, check this out. It supports the following platforms: Solaris, SunOS, Linux, FreeBSD, BSD/OS, and possibly other Unices.
- Debuggy
Debuggy is a Windows debugger, disassembler, Windows resource extractor, file hex editor, window sniffer and API spy all rolled into one.
- Insight
Insight is a GDB (the GNU debugger) graphical front end created by Redhat and Cygnus. The GUI allows you an easy-to-use interface to the gdb commands.
- GoBug Debugger
GoBug is a symbolic debugger for Win32 assembly language programs that works under Windows 95, 98 and ME. You can set breakpoints, keep a (partial) log of Windows events and messages, single step through the program, view the arguments and local data, check the return values (and errors) from API calls, etc.
- API Monitor
This tool allows you to monitor the API calls made by a Windows application. It is useful in figuring out how other applications work as well as in tracking problems in your own program by examining the API calls it makes. Since it's a user mode application, it can only monitor calls made by usermode programs and not things like drivers.
- GNATS (GNU Bug Tracking System)
GNATS is the GNU Bug Tracking System (not the same as GNAT which is the GNU Ada Translator). It is a set of tools to help you track bug reports on your software. Like all things GNU, it comes with source code.You can get more information from Dan Kegel's unofficial GNATS page.
- Strace (Trace Unix system calls)
strace traces Unix system calls, allowing you an invaluable peek into how your program (or any other program for that matter) interacts with the operating system. A must to have when writing Unix programs. The source code can be compiled on numerous Unix systems, including Linux, SunOS, Solaris and some versions of IRIX.
- DDD (Data Display Debugger)
DDD, the Data Display Debugger, is a GUI debugger that interfaces with command line debuggers like GDB, DBX, JDB, WDB, XDB, the Perl debugger and the Python debugger. It allows you to view the source code as well as display data structures. It supports the debugging of a whole hosts of programming languages including Ada, C, C++, Chill, Fortran, Java, Modula, Pascal, Perl, Python and machine level debugging. The program is free, and comes with GPL source code. Many operating systems are supported, including Unix (and clones) and Windows.
- Qualitas 386SWAT (Protected Mode Debugger)
386SWAT is a protected mode debugger developed by Qualitas Inc (makers of the memory manager 386MAX). It not only allows you to debug real, protected mode and virtual 8086 mode programs under DOS and Windows, it is also a Windows Kernel Debugger in the fashion of WDEB386 but without the need another machine to debug your program (just another monitor).
- GRDB (Real mode debugger)
The GRDB is a command line real mode debugger that supports the Pentium instruction set, MMX, debugging of floating point instructions, etc. It handles software and hardware breakpoints, session logging, command line history, etc. The full source code is provided. The program requires a 386 or better processor.
- TempleMon
TempleMon is a low-level debugger and disassembler for Atari ST systems that comes with source code. It is in German. (Scroll to the bottom of the linked page to find the listing for TempleMon).
- GNU Visual Debugger (now part of the GNAT Programming Studio)
This debugger, written in Ada, is "an extensible graphical debugger licensed under the GNU General Public License". The debugger can be launched remotely via a variety of protocols (such as rsh, ssh, etc), supports different languages (C, C++, Ada), able to handle multiple processes, multiple threads, etc. It is available on "all Unixes" and Windows systems. It is now part of the GNAT Programming Studio (an Ada compiler suite).
Related Pages
- How to Register Your Own Domain Name - get one for your software
- Free Autorun/Autoplay DVD and CD Menu Creation Software
- Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
- Free Java Tools, Decompilers, Disassemblers, Virtual Machines, Debuggers, Resources
- Perl CGI Script Debugging: Solving a 500 Internal Server Error
- How to Protect Your Images from Bandwidth Thieves (Prevent Hotlinking) (PHP Script)
- How to Make a Text Link Submit a Form
- Which Web Host Do You Recommend? (FAQ)
Can't Find What You're Looking For?
Search the site using Google.
Newest Pages
- How to Rescue Your Website from the Clutches of a Bad Web Designer or Bad Web Host
- How to Created Rounded Corners for Your Box Borders in CSS
- How to Add a Feedback Form to Your Website with Dreamweaver CS5
- Dreamweaver CS5 Tutorial: How to Design a Website with Dreamweaver CS5
- What is MySQL? What is a Database? What is SQL?
- Free / Open Source Non-SQL Database Servers and Engines
- Free Royalty Free Music and Sounds
- Free Programmer's Fonts
- How to Point a Domain Name to Your Website (Or What to Do After Buying Your Domain Name)
- Should You Choose a Linux or a Windows Web Hosting Package? Is There Such a Thing as a Mac Web Host?
- How to Add a CAPTCHA Test to Your Feedback Form Script: Reducing Spam in Your Contact Form
Popular Pages
- How to Create/Start Your Own Website: The Beginner's A-Z Guide
- How to Register Your Own Domain Name - how to get your own domain name
- How to Create a Website with Dreamweaver CS4 (Dreamweaver Tutorial)
- How to Create a Bootable Windows XP Setup CD/DVD on a Preinstalled Windows System
- Free Partitioning Software - Copy, Create, Move, Resize, Convert, Undelete Partitions
- Free Data Recovery, File and Partition Recovery, Undelete and Unformat Software
- How to Create an Emergency Windows Rescue CD
- Free DVD Authoring and Creation Software
- Free CD and DVD Burners and Copying Software
- Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
How to Link to This Page
It will appear on your page as:
Free Debugging Tools, Static Source Code Analysis Tools, Bug Trackers
