进行远程代码修改
编译
简单的工程可以一条gcc命令进行编译,较大的项目还是使用cmake更好一些
使用cmake编译,首先编写CMakeLists.txt,然后编写脚本配置环境变量如include和library...查看log
一般程序会输出log到磁盘文件,想要实时监控日志文件的更新内容,可以使用tail -f filename命令,它会在文件内容有更新时将结果输出到命令窗口
调试
使用gdb调试C++程序
编译时加.../prog 进入gdb交互环境,通过命令set args xxx来设置参数,然后r来运行
通过设置,使程序挂掉时生成core文件,通过gdb ..../prog core.xxxx来还原程序挂掉前的状态
gdb常用快捷键:
bt 查看堆栈
l 查看当前所处位置的源代码
b 打断的,如b filename::linenum 打断点到文件的某一行,也可以直接打到某函数位置.../prog gmon.out -b 查看输出
原理: 在每个函数中插入count函数,这样函数调用时就会计算次数和时间
缺点: 无法分析多线程程序;无法观察IO时间
valgrind工具
可以使用它的Memcheck