free(): invalid pointer:Ubuntu16.4下cmake编译程序的运行错误,如何使用backtrace定位

qq_28063937 2018-05-04 09:48:47
cmake编译的程序出错
信息如下 指针释放错误

nut@nut-TM1701:~/eccv2014_changkyu/software/mvt/bin$ ./mvt
*** Error in `./mvt': free(): invalid pointer: 0x00007f0d2a23ed78 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f0d296407e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7f0d2964937a]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f0d2964d53c]
/usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.58.0(_ZN5boost14char_separatorIcSt11char_traitsIcEED1Ev+0x16)[0x7f0d2f197d16]
/home/MATLAB/R2017a/bin/glnxa64/libmwfl.so(+0x1278aa)[0x7f0d2933d8aa]
/home/MATLAB/R2017a/bin/glnxa64/libmwfl.so(_ZN2fl3mem7manager8instanceEv+0x35)[0x7f0d2933f335]
/home/MATLAB/R2017a/bin/glnxa64/libmx.so(+0x5d954)[0x7f0d2f431954]
/home/MATLAB/R2017a/bin/glnxa64/libmx.so(+0x137126)[0x7f0d2f50b126]
======= Memory map: ========
……………………………………
……………………………………
……………………………………
7f0d14fe1000-7f0d14fe3000 r-xp 00000000 08:03 927752 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7f0d14fe3000-7f0d151e3000 ---p 00002000 08:03 927752 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7f0d151e3000-7f0d151e4000 r--p 00002000 08:03 927752 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7f0d151e4000-7f0d151e5000 rw-p 00003000 08:03 927752 /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7f0d151e5000-7f0d15271000 r-xp 00000000 08:05 1578885 /home/MATLAB/R2017a/bin/glnxa64/libfreetype.so.6.11.1
7f0d15271000-7f0d15470000 ---p 0008c000 08:05 1578885 /home/MATLAB/R2017a已放弃



因为源码工程比较大,求教如何使用上面的信息定位的是哪里的问题


...全文
978 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
aabbabababaa 2018-05-05
  • 打赏
  • 举报
回复
free()传入的地址不是 malloc 返回的地址,而是这个地址后面的。只有 malloc返回的地址才能free()

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧