Ubuntu16.04 安装Convolutional Pose Machines的前期准备之matcaffe

本文介绍了在Ubuntu16.04上安装Convolutional Pose Machines(CPM)的前期工作,包括安装Caffe、matcaffe和配置MATLAB环境。首先确保Caffe已安装,然后详细讲述了如何修改Makefile.config以适应MATLAB2017a/b的路径,解决mexext缺失的问题,以及如何处理matcaffe编译中的错误。在解决所有问题后,成功完成了mattest并分享了解决报错的资源链接。
摘要由CSDN通过智能技术生成

一、准备工作介绍

在这里插入图片描述

  1. 安装CPM之前,需要安装好Caffe/matcaffe/pycaffe
  2. 安装matcaffe之前,需要安装好caffematlab

Caffe是之前就已经搭好的,可以参考网上其他资源安装。
MATLAB2017a参考此链接:ubuntu16.04安装MATLAB R2017b步骤详解(附完整文件包)
ubuntu16.04安装Matlab2015b步骤及各种问题解决

二、matcaffe

  1. 进入caffe
cd caffe
sudo make clean
  1. 修改Makefile.config
sudo gedit Makefile.config

MATLAB_DIR := /usr/local修改为MATLAB_DIR := /usr/local/MATLAB/R2015b
注意:修改的地址是你安装好的matlab的位置

  1. 将Matlab的安装路径添加到path中
  • 打开.bashrc文件
sudo gedit ~/.bashrc 
  • 在文件末尾添加以下语句
export PATH=$PATH:/usr/local/MATLAB/R2015b/bin

注意:这都是我自己matlab的安装路径,修改时一定要将其改为自己matlab的路径

  • 编译:
make all -j16
  1. matcaffe
make matcaffe

在这里插入图片描述

错误忘记截图了,但是解决好下面的错误后就编译通过了

  • 错误:make: /usr/local/bin/mexext:Command not found
    原因:mexext存在于matlab的安装路径中,它没有安装到/usr/loacal/bin下,所以这里mexext找不到。
    解决:把matlab安装目录/bin/mexext链接到/usr/bin
sudo ln -s /usr/local/MATLAB/R2017b/bin/mexext /usr/local/bin

同理出现其他类似错误:
make: /usr/local/bin/mex:Command not found
make: /usr/local/bin/matlab:Command not found
用相同的方式解决

sudo ln -s /usr/local/MATLAB/R2017b/bin/mex /usr/local/bin
sudo ln -s /usr/local/MATLAB/R2017b/bin/matlab /usr/local/bin

之后,bin文件夹下会出现这三个

在这里插入图片描述
贴一个链接:Caffe 编译错误记录
问题解决后,编译通过
在这里插入图片描述

三、mattest

make mattest

继续报错,好歹上面报的错还能解决,然而这次的报错卡了我一晚上T T
在这里插入图片描述

详细错误:

Invalid MEX-file '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64':
Missing symbol
'_ZN6google8protobuf11MessageLite15ParseFromStringERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf14MessageFactory29InternalRegisterGeneratedFileEPKcPFvRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf2io17CodedOutputStream26WriteStringWithSizeToArrayERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPh'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal10NameOfEnumB5cxx11EPKNS0_14EnumDescriptorEi'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZN6google8protobuf8internal13empty_string_B5cxx11E' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal14WireFormatLite10ReadStringEPNS0_2io16CodedInputStreamEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal14WireFormatLite11WriteStringEiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS0_2io17CodedOutputStreamE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal14WireFormatLite22WriteBytesMaybeAliasedEiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS0_2io17CodedOutputStreamE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal14WireFormatLite23WriteStringMaybeAliasedEiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS0_2io17CodedOutputStreamE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal14WireFormatLite9ReadBytesEPNS0_2io16CodedInputStreamEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal21StringTypeHandlerBase3NewB5cxx11Ev' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZN6google8protobuf8internal21StringTypeHandlerBase6DeleteEPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNK6google8protobuf14DescriptorPool14FindFileByNameERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNK6google8protobuf7Message11DebugStringB5cxx11Ev' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNK6google8protobuf7Message11GetTypeNameB5cxx11Ev' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNK6google8protobuf7Message25InitializationErrorStringB5cxx11Ev' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEcm'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEcm' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEmmPKc' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEPKc' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareERKS4_' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE3strEv' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNSt11logic_errorC2ERKS_' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt12domain_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt12out_of_rangeC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt13runtime_errorC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNSt13runtime_errorC2ERKS_' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt14overflow_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructEmc'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE14_M_replace_auxEmmmc'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4swapERS4_' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6assignEPKc' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6resizeEmc' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE8_M_eraseEmm' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm' required
by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EPKcRKS3_' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EES4_'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZTTNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEE' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZTVNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEEE'
required by '/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZTVNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEE' required by
'/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_Unwind_Resume' required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEPKc' required
by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm'
required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE14_M_replace_auxEmmmc'
required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6assignEPKc' required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_appendEPKcm' required
by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_assignERKS4_'
required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_createERmm' required
by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev'
required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
'_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE7_M_syncEPcmm'
required by
'/usr/lib/x86_64-linux-gnu/libglog.so.0->/home/srq/caffe/matlab/+caffe/private/caffe_.mexa64'
Missing symbol
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值