当前位置: 首页 > news >正文

网站开发团队构成天眼网

网站开发团队构成,天眼网,最新事故案例100例,hao123上网主页官网设置成主页段错误的愿意和调试方法 主要的原因#xff1a; 访问了不存在的内存指针访问系统保护的内存地址方位只读的内存地数组越界栈溢出 主要查看#xff0c;指针的问题是否出现错误使用 方法1. gdb直接调试 使用run命令直接报错#xff0c;查看 方法2. 调试core文件#xf…段错误的愿意和调试方法 主要的原因 访问了不存在的内存指针访问系统保护的内存地址方位只读的内存地数组越界栈溢出 主要查看指针的问题是否出现错误使用 方法1. gdb直接调试 使用run命令直接报错查看 方法2. 调试core文件 当程序运行的过程中异常终止或崩溃操作系统会将程序当时的内存状态记录下来保存在一个文件中这种行为就叫 core dump核心转储。 2.1 打开 core dump 功能 终端输入 ulimit -c如果输出 0说明core的文件大小为0也即没有开启 core dump 功能 不限制 core dump 存储信息的大小可以执行 ulimit -c unlimited限制 core dump 大小可以执行单位是 KB ulimit -c 10242.2 永久修改可选 以上指令只对当前终端有效想要永久生效需要修改 “/etc/security/limits.conf” 文件重启后生效 sudo vim /etc/security/limits.confgdb ./执行文件 ./core结果告诉出错的位置会生成当前目录下 2.3 修改 core 文件保存路径和命名可选 默认情况下内核在 core dump 时所产生的 core 文件放在与该程序相同的目录中并且文件名固定为 core 执行下面指令修改 core 文件路径 echo /tmp/crash/core-%e-%t | sudo tee /proc/sys/kernel/core_pattern其中 “/tmp/crash/core-%e-%t” 是 core dump 文件的保存路径和命名 注意这里的 “/tmp/crash/” 目录如果不存在程序崩溃时候不会自动创建 “/tmp/crash/” 目录也就不会保存 core dump 文件了 参数表 %p - insert pid into filename 添加pid(进程id)%u - insert current uid into filename 添加当前uid(用户id)%g - insert current gid into filename 添加当前gid(用户组id)%s - insert signal that caused the coredump into the filename 添加导致产生core的信号%t - insert UNIX time that the coredump occurred into filename 添加core文件生成时的unix时间%h - insert hostname where the coredump happened into filename 添加主机名%e - insert coredumping executable name into filename 添加导致产生core的命令名 2.4 程序添加 gdb 调试信息 catkin_make 编译 catkin_make -DCMAKE_BUILD_TYPEDebug或者在 CMakelist.txt 文件前面添加以下代码 SET(CMAKE_BUILD_TYPE Debug) SET(CMAKE_CXX_FLAGS_DEBUG $ENV{CXXFLAGS} -O0 -Wall -g -ggdb) SET(CMAKE_CXX_FLAGS_RELEASE $ENV{CXXFLAGS} -O3 -Wall)当程序运行崩溃后会在 “/tmp/crash/” 目录中产生 core dump 文件 2.5 执行这句话即可 gdb /devel/lib/xxx.so xxx-core参考https://zhuanlan.zhihu.com/p/655272437 方法3. 反汇编定位 3.1 使用dmseg命令定位出现段错误的输出信息的地址 demsg 即出现对应的段错误的指令指针对应的地址记住这个地址3.2 或者使用catchsegv定位错误地址 catchsegv ./可执行程序3.3 反汇编进行查看 使用 objdump -S ./可执行程序logdump根据出错的段错误地址确定出错的位置 总结 出现段错误的时候首先想一想段错误的定义出现的原因编程的时候定义变量最好初始化数组不越界使用 其他报错 循环使用出现段错误查看你的频率和休眠时间是否对应 double free问题等待补充 在使用ceres/g2o报错时在cmakeList.txtset(CMAKE_CXX_FLAGS “-stdc11 -marchnative -O3”) 可以参考https://blog.csdn.net/weixin_46120107/article/details/130663182 set(CMAKE_CXX_FLAGS -stdc11 -marchnative -O3)native 就是相当于自检查cpu, -march是gcc优化选项, -Ox 这个参数只有在 cmake -DCMAKE_BUILD_TYPErelease时有效
http://wiki.neutronadmin.com/news/263751/

相关文章:

  • 天津哪家公司做企业网站做爰网站贴吧
  • 佛山免费建站找哪家wordpress小说插件
  • 照片书那个网站做的好农村自建房室内装修设计效果图
  • 网站建设回访wordpress手机版怎么做
  • 做网站买那种服务器天河手机建网站
  • 网站开发的售后 维保dw网页制作成品代码加图片
  • 如何查询网站点击量关键词优化网站排名
  • 如何用源代码做网站网站建设报价包括哪些
  • 如何分析一个网站的用户网站风格抄袭
  • 怎样做网站首页图片变换怎么自学室内设计与装修
  • 网站开发php jspwordpress页面制作
  • 广州天河区网站建设公司制作图片二维码
  • 东莞营销型网站建站wordpress如何修改首页文件模板
  • 建设公司网站需要准备什么高端网站设计制作的
  • 自助建设视频网站单页网站模板安装
  • 泌阳专业网站建设建设手机网站例
  • 广东高端网站设计公司wordpress资源网模板
  • 专业的网站建设公司电话余姚什么网站做装修比较好
  • 西乡网站开发做图专业软件下载网站有哪些
  • 个人网站 免备案上海seo公司
  • 阳江企业网站国家开发银行生源地助学贷款网站
  • 网站建设湖南岚鸿建设旅游电子商务网站的建设
  • 专业摄影网站推荐做网站需要代码吗
  • 网站怎么做七牛云加速软件大全免费下载
  • 做网站接广告赚钱吗湖南企业网站建设制作
  • 如今流行的网站建设网站建设的完整流程包括
  • 利用已有网站 制作南京高端定制网站建设
  • 做体育设施工程公司的网站网络企业做网站
  • 校园内部网站建设方案青白江建设网站
  • 可信赖的常州网站建设网站标题是关键词吗