有时候有些问题只能在客户环境里面重现,从log文件里面又发现不了什么线索,于是想着是否可以debug,想来想去没有直接的办法,只能是work around:
1. 在自己的环境里面编译同样版本的产品,编译之前将优化选项-O2替换成-g,保证debug symbol在生成的binary或者executable文件中,并拷贝到客户的环境里面。
2.将可能产生问题的那部分源代码folder(e.g. src)也一并拷贝到客户环境里面
3. gdb `find ./src -type d -printf ' -d %p \n'` -p process_id