linux下 Error in 'python3':free(): invalid pointer

痴心易碎 提交于 2020-01-19 15:49:25

linux下坑人的报错!折腾了好久。

现象:这次是一个底层库 C++,底层库之上一层SDK C++,之上再一层so库,用python调用SDK。然后python层依赖了opencv和SDK,调换opencv和SDK的依赖顺序,opencv在前就报错。且莫名其妙毫无头脑。

之前好像也遇到过类似的问题(opencv动静态库版本冲突等等会遇到),每次都是莫名其妙的解决了,这次简直了。

 

解决:

1.网上很多人说,添加malloc的一个库,试了不行,加了继续报错,再查新错误,说换顺序。还有就是真的是free了错误的指针报错的。我的情况看起来都不是。

2.依赖库也很多,编译选项也很多。一个一个试了好久,最终发现一个编译选项-static-libstdc++,去掉就好使了。

 

分析:最终啥原因还不知道,但是加上-static-libstdc++在程序最简单最干净的时候是可以的,只要加上一句include<iostream>就又会报上面那个错误。不知道还是啥冲突了。

目前先这样解决吧。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!