yolov3-caffe 生成 detectnet执行文件时出现的问题及解决

1.

用 find -name libcaffe.so 程序 运行很慢

改用 先进入/opt/caffe/lib 路径

ldd libcaffe.so | grep log

意思是列出来了libcaffe.so 的依赖,| 表示将上一级作为输入, grep 查找 含有 log字符串的并列出来。

 

2.

错误:

make[2]: *** No rule to make target `/home/nvidia/caffe/build/lib/libcaffe.so', needed by `x86_64/lib/libsysDetectSpeed.so'.  Stop.

cmakelists 里依赖的库要进行修改

target_link_libraries(sysDetectSpeed 
        /opt/caffe/lib/libcaffe.so  
        /usr/lib/x86_64-linux-gnu/libglog.so.0  
        /usr/lib/x86_64-linux-gnu/libgflags.so.2
        /usr/lib/x86_64-linux-gnu/libboost_system.so  
        /usr/lib/x86_64-linux-gnu/libGLEW.so.1.13  
)
 

3.这个位置报错#include <caffe/caffe.hpp>

cmakelist 里caffe路径改对

include_directories(${PROJECT_INCLUDE_DIR} 
                /opt/caffe/include 

 

4.make[2]: *** No rule to make target `/usr/lib/x86_64-linux-gnu/libGLEW.so.1.13', needed by `x86_64/lib/libsysDetectSpeed.so'.  Stop.

这是在我上一步时   在   target_link_libraries里添加了   /usr/lib/x86_64-linux-gnu/libGLEW.so.1.13   时,告诉我需要x86_64/lib/libsysDetectSpeed.so'.  ,我系统里没有x86_64/lib/libsysDetectSpeed.so'.  。用ldd libcaffe.so | grep GLEM发现,已经有/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10版本,于是就在target_link_libraries版本改为1.10,就不会报错了,因为不用重新生成新版本的了,就不需要这个依赖了。

5. libboost_python-py27.so.1.55.0, needed by /opt/caffe/lib/libcaffe.so, not found (try using -rpath or -rpath-link)
/opt/caffe/lib/libcaffe.so: undefined reference to `boost::python::converter::detail::arg_to_python_base::arg_to_python_base(void const volatile*, boost::python::converter::registration const&)'

去 usr/lib/x86_64-linux-gnu  命令为 ll | grep python ,就好,这个库是 c++与python之间的底层连接,因为这段代码用python调用了caffe,所以用这个库来作为底层的通信接口。

 

6. 用find -name查找文件效率太低了

   用locate查看具体的文件是否存在。

$ locate libwebsockets.so

 7.

./detectnet: error while loading shared libraries: libboost_system.so.1.55.0: cannot open shared object file: No such file or directory
 

用locate找到 libcaffe.so,然后用 ldd libcaffe.so | grep boost找到caffe 的依赖。结果是

 

    libboost_system.so.1.55.0 => not found
    libboost_thread.so.1.55.0 => not found
    libboost_python-py27.so.1.55.0 => not found
 

那就安装一下吧。

安装boost的时候,其实很简单
wget http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz
tar -xzvf boost_1_55_0.tar.gz
cd boost_1_55_0
./bootstrap.sh --prefix=/usr/local
./b2 install --with=all
boost库被安装在/usr/local/lib下面

安装后,需要加入环境变量库

sudo vim ~/.bashrc
  •  

 在该文件最后加入以下两行并保存:

 export PATH=/usr/local/lib:$PATH

 export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

 使该配置生效:

source ~/.bashrc

这样解决了

    libboost_system.so.1.55.0 => not found
    libboost_thread.so.1.55.0 => not found
    libboost_python-py27.so.1.55.0 => not found

前两个错误,但是第三个库    libboost_python-py27.so.1.55.0 还是找不到,,,

最后从另一台电脑上考进来这个库,程序就运行的起来了。。。

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值