使用Caffe时候遇到的问题(长期更新)

Caffe是一个深度学习的框架,本文主要是记录使用Caffe遇到的一些奇葩问题,不涉及对代码的理解。

Caffe的环境配置

为了方便,我把我在Ubuntu 14.04下编译的依赖库上传到百度云,下载并修改Makefile.config即可编译Caffe,免去各种复杂的环境配置。在Ubuntu 12.04跟14.04都可用。

Anaconda的libm.so跟系统库的冲突

提示的错误如下:

1
2
3
4
5
6
7
8
9
10
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__exp_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__log10_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libxvidcore.so.4: undefined reference to `__logf_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libvorbis.so.0: undefined reference to `__acosf_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__pow_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__log2_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libxvidcore.so.4: undefined reference to `__log10f_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libxvidcore.so.4: undefined reference to `__log_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__powf_finite@GLIBC_2.15'
//usr/lib/x86_64-linux-gnu/libx264.so.142: undefined reference to `__log2f_finite@GLIBC_2.15'

解决办法是把Anaconda的libm.so删掉或者改名,让Caffe编译的时候链接的是系统自带的。Anaconda的libm.so的路径是$HOME/anaconda/lib/libm.so

坚持原创技术分享,您的支持将鼓励我继续创作!