编译成功,运行时报错:

在使用 pytorch or tensorflow or caffe 时,都可能存在这个问题:

*** Error in `xxx': free(): invalid pointer: 0x00000000020663b0 ***

很可能是缺少libtcmalloc库

解决方法1:

apt-get安装libtcmalloc
sudo apt-get install libtcmalloc

然后打开~/.bashrc文件
sudo gedit ~/.bashrc
在文件末尾添加如下代码: 
export LD_PRELOAD="/usr/lib/libtcmalloc_minimal.so.4" 
最后重新载入环境变量即可 
sudo source ~/.bashrc

但是我在服务器上是普通user,不是管理员sudoer,所以我采用了另一种方法

解决方法2:(推荐,只在自己的环境里安装,不会影响到服务器上其他人,不需要sudo权限)

github下载tcmalloc源码:

https://github.com/yangzhengxing/tcmalloc

解压,进入目录

./autogen.sh

(运行autogen命令时可能会提示:

那是因为你没有安装autoreconf,自行解决)

./configure

make -j4

然后就完成了,这是你会发现在tcmalloc目录中多了几个.la文件,则就是编译得到的结果。

关于什么是.la文件以及.la文件怎么用:

https://www.ibm.com/developerworks/cn/aix/library/1007_wuxh_libtool/

然后使用libtool工具将自己需要的库的.la文件生成.a和.so,这里我们需要tcmalloc和profiler两个,创建一个build文件夹存储生成的库

libtool --mode=install install -c libtcmalloc.la /home/zhangsuosheng/zss_output_feature_image/tcmalloc/build

libtool --mode=install install -c libprofiler.la /home/zhangsuosheng/zss_output_feature_image/tcmalloc/build

然后我们就进行编译,

使用静态库编译:

g++ -std=c++ -o netapp.bin zss_featureimg.cpp  `pkg-config --libs --cflags opencv` -I ~/caffe_mpi/include/ -I ~/caffe_mpi/src/ -I ~/caffe_mpi/build/src/ -I /usr/local/cuda/include/ -L ~/caffe_mpi/build/lib/ -lprotobuf -lcaffe -lglog -lboost_system /home/zhangsuosheng/zss_output_feature_image/tcmalloc/build/libprofiler.a /home/zhangsuosheng/zss_output_feature_image/tcmalloc/build/libtcmalloc.a

使用动态库编译:

g++ -std=c++ -o netapp.bin zss_featureimg.cpp  `pkg-config --libs --cflags opencv` -I ~/caffe_mpi/include/ -I ~/caffe_mpi/src/ -I ~/caffe_mpi/build/src/ -I /usr/local/cuda/include/ -L ~/caffe_mpi/build/lib/ -L ~/zss_output_feature_image/tcmalloc/build/ -lprotobuf -lcaffe -lglog -lboost_system -lprofiler -ltcmalloc

然后编译成功

然后将这个build文件夹加到LD_LIBRARY_PATH中以便运行时能找到。

然后运行成功

解决 free(): invalid pointer: 0x00000000019ff700 运行时报错(caffe)(libtool使用)的更多相关文章

  1. (解决方法)Android studio 运行时报错Do you want to uninstall the existing application?的解决方法

    在Android studio中,有时运行会报错: WARNING: Uninstalling will remove the application data!Do you want to unin ...

  2. 解决BeautifulSoup库运行时报错问题

    解决BeautifulSoup库运行时报错问题 运行BeautifulSoup库时可能出现下面的错误,具体错误消息为:To get rid of this warning, change this: ...

  3. Appium在Android7.0及以上系统运行时报错的解决方案

    背景:在使用Samsung S系列手机进行自动化测试时,发现同样脚本的情况下华为荣耀系列可以正常运行,最终发现差异在于Android7.0及以上系统和appium版本不匹配,需要升级appium.但需 ...

  4. cocos2dx在win10系统上的VS2017运行时报错:丢失MSVCR110.dll

    如题,运行环境为cocos2dx 3.14.1,win10系统,VS2017. 编译cocos2dx的cocos2d-x-3.14.1/build/cocos2d-Win32.sln已通过,不过运行时 ...

  5. appium 链接真机运行时报错

    今天用appium链接真机时,碰到的第一个问题:Attempt to re-install io.appium.settings without first uninstalling.(这是日志中显示 ...

  6. 解决cocos2dx在Xcode中运行时报:convert: iCCP: known incorrect sRGB profile 的问题

    解决cocos2dx在Xcode中运行时报:convert: iCCP: known incorrect sRGB profile 的问题 本文的实践来源是参照了两个帖子完成的: http://dis ...

  7. scrapy 运行时报错 No module named _sqlite3

    新服务器上运行scrapy时报错 exceptions.ImportError: No module named _sqlite3 原因 由于新的环境缺少sqlite的依赖,编译python3是虽然不 ...

  8. ionic打包项目,运行时报错A problem occurred configuring root project 'android'。。。

    运行报错的原因是sdk没有下载完整 解决办法: 1,打开sdk manage.分别下载android support repository.Google play services.google re ...

  9. Android Studio中 图片资源存在但是运行时报错的问题

    最近看安卓遇到了了一个很头疼的问题,我明明在drawable文件夹中添加了图片资源,Android Studio 中也预加载了图片,但是在运行的时候就开始咔咔咔报错 = = 如下图所示: 图片后面显示 ...

随机推荐

  1. Garbage First(G1)垃圾收集器

    1. 概述 G1(Garbage First)垃圾收集器是当今垃圾回收技术最前沿的成果之一.早在JDK7就已加入JVM的收集器大家庭中,成为HotSpot重点发展的垃圾回收技术.同优秀的CMS垃圾回收 ...

  2. VS编译duilib项目时候的错误解决方法整理

    @1:找不到Riched20.lib 用everything等软件搜索下磁盘.找到所在的文件夹加入到vs的库文件夹就可以.我得是C:\Program Files (x86)\Microsoft SDK ...

  3. TCP协议的三次握手和四次挥手过程

    TCP是一种面向连接(连接导向)的.可靠的基于字节流的传输层通信协议.TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认.对失序的数据重新排序.丢弃重复数据. 1.TCP/ ...

  4. linux c log 日志接口

    #define SIZE_16M 16777216             //1024*1024*16 #define LOG_FILE_PATH "./mylog.txt"   ...

  5. Netty4.x中文教程系列(六) 从头开始Bootstrap

    Netty4.x中文教程系列(六) 从头开始Bootstrap 其实自从中文教程系列(五)一直不知道自己到底想些什么.加上忙着工作上出现了一些问题.本来想就这么放弃维护了.没想到有朋友和我说百度搜索推 ...

  6. hdu6006 Engineer Assignment 状态dp 定义dp[i][s]表示前i个工程状态为s可以执行的最大工程数。s表示前i个工人选走了s状态的工程师。

    /** 题目:hdu6006 Engineer Assignment 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6006 题意:已知n个工程,每个需要某 ...

  7. awk数组处理字符串合并

    需求: 有一文本文件 lessons.txt 内容如下,请使用 awk 处理该文本,并输出内容如 result.txt lessons.txt: 634751 预排 568688 预排 386760 ...

  8. python3颜色输出

    遇到一个项目,需求是在python3中,处理结果显示高亮加颜色,然后资料整理如下 ### 格式: \033[显示方式;前景色;背景色m 这里的格式是规定了m后面的输出字符颜色样式 说明: 前景色 背景 ...

  9. easy ui 验证框的使用

    Easy ui 插件之validatebox missingMessage:未填写时显示的信息validType:验证类型见下示例invalidMessage:无效的数据类型时显示的信息require ...

  10. 在线生成条形码的解决方案(39码、EAN-13)

    感谢博主:转自:http://xoyozo.eyuyao.com/blog/barcode.html public partial class ReceivablesFormView : System ...