這是在python中使用caffe產生的錯誤.
程序很普通:
#-*-coding=utf-8-*-
import numpy as np
import matplotlib.pyplot as plt
# Load caffe
import sys
caffe_root = "~/Documents/caffe-master/"
sys.path.insert(0, caffe_root + 'python')
import caffe
import os
caffe.set_device(0)
caffe.set_mode_gpu()
model_weights = "test1_iter_240000.caffemodel"
model_def = "test.prototxt"
net = caffe.Net(model_def, model_weights, caffe.TEST)
image = caffe.io.load_image("1.jpg")
print(net.blobs['data'].data.shape)
參考網址:https://github.com/tensorflow/tensorflow/issues/5343
locate libcudart.so.8.0
/usr/local/cuda-8.0/lib64/libcudart.so.8.0
/usr/local/cuda-8.0/lib64/libcudart.so.8.0.61
我的機子上,LD_LIBRARY_PATH已經包含了/usr/local/cuda-8.0/lib64
解決方法:sudo ldconfig /usr/local/cuda/lib64
ldconfig命令的用途主要是在默認搜尋目錄/lib
和/usr/lib
以及動態庫配置文件/etc/ld.so.conf
內所列的目錄下,搜索出可共享的動態鏈接庫(格式如lib*.so*),進而創建出動態裝入程序(ld.so)所需的連接和緩存文件。緩存文件默認為/etc/ld.so.cache
,此文件保存已排好序的動態鏈接庫名字列表,為了讓動態鏈接庫為系統所共享,需運行動態鏈接庫的管理命令ldconfig,此執行程序存放在/sbin
目錄下。
ldconfig通常在系統啟動時運行,而當用戶安裝了一個新的動態鏈接庫時,就需要手工運行這個命令。