项目:C/C++调试工具

1. 日志:glog
	a. github
	https://github.com/google/glog
2. C/C++静态检查工具:cppcheck
	a. github
	https://github.com/danmar/cppcheck
	b. 安装:
	sudo apt-get install cppcheck
	c. 使用:
	对指定目录进行检查:cppcheck --enable=all 目录名
3. C++编译器:clang
	a. 安装
	sudo apt-get install llvm
	sudo apt-get install clang
	b. 使用
	clang test.c
	clang test.c -fsyntax-only  # 检查语法和词法正确性
4. 错误检查:breakpad
	a. github
	https://github.com/google/breakpad
	b. 安装:
	cd breakpad-master
	./configure
	make
	两个可执行文件:src/processor/minidump_stackwalk,src/tools/linux/dump_syms/dump_syms
	c. 使用:
	breakpad捕获到的dmp文件:test.dmp
	dmp文件对应的so库:test.so
	获取symbol文件:dump_syms test.so > test.so.sym
	得到可读的堆栈跟踪文件:minidump_stackwalk test.dmp test.so.sym > crash.log
5. 断点:debugbreak
	a. github
	https://github.com/scottt/debugbreak
	b. 使用
	在代码指定位置打断点:debug_break(); /* will break into debugger */
6. 调试:valgrind(内存泄漏/内存越界)
help50 valgrind ./test   # 检索出重要的信息
7. gdb
	a. 编译:gcc -g  -Wall -Werror test.c
		i. -g:生成调试信息
		ii. -Wall:显示警告
		iii. -Werror :把警告视为错误
	b. 调试:gdb a.out
		i. 加断点:第n行加断点:b n
		ii. 查看断点信息:b
		iii. 删掉第i个断点:d i
		iv. 运行:run
		v. 打印变量i的值:p i
		vi. 往下运行:n
		vii. 退出当前函数:finish
		viii. 退出:q
	c. 图形界面
		i. 从头开始运行:start
		ii. 现在运行的文件:list
        iii. 打开图像:gdb ./a.out --tui (快捷方式:按住ctrl,再按x,松开x,再按a)

你可能感兴趣的:(项目总结)