我在运行OS X 10.11 El Capitan的Mac上使用Anaconda python。
我正在尝试在iPython中使用pycaffe
,但导入它(import caffe
)失败并显示错误
ImportError: dlopen(/Users/.../Documents/caffe-master/python/caffe/_caffe.so, 2): Library not loaded: @rpath/libcudart.7.5.dylib
Referenced from: /Users/.../Documents/caffe-master/python/caffe/_caffe.so
Reason: image not found
虽然iPython无法导入caffe,但是在'普通'python中这样做。
Python 2.7.10 |Anaconda 2.3.0 (x86_64)| (default, May 28 2015, 17:04:42)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
>>> import caffe
>>> caffe.Net
<class 'caffe._caffe.Net'>
我还应该提一下,我正在使用CUDA 7.5,虽然我看不到哪个版本的caffe(下载了zip),但它是在2015年9月17日从主分支机构完成的。
我为'普通'python执行的能够导入caffe的操作是将以下内容添加到〜/ .bash_profile
# added pycaffe path
export PYTHONPATH="/Users/.../Documents/caffe-master/python:$PYTHONPATH"
# needed to import pycaffe in python
export DYLD_FALLBACK_LIBRARY_PATH='/usr/local/cuda/lib:/anaconda/lib:/usr/local/lib:/usr/lib:/opt/intel/lib:/opt/intel/mkl/lib'
iPython正在阅读.bash_profile
中设置的PYTHONPATH,因为如果ImportError: No module named caffe
行已被注释,它将提供export PYTHONPATH=...
。但由于某些原因,它找不到DYLD_FALLBACK_LIBRARY_PATH
,这是普通的'python'。
关于可能出错的任何想法?
答案 0 :(得分:0)
好的,事实证明,主要问题是由于El Capitan中称为SIP(系统完整性保护)的新功能,因此无法设置@model IEnumerable<MvcMovies.Models.Movie>
@{
ViewBag.Title = "Search By Gen";
}
<script src="@Url.Content("~/Scripts/jquery-1.7.1.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.20.js")" type="text/javascript"></script>
<link href="@Url.Content( "~/content/themes/base/jquery-ui.css")" rel="Stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(
function () {
var dropDownSelectedDefault = $("#TotalGen option:selected").text();
$("#viewPlaceHolder").load("/Movie/SearchByGenGetResult", { gen: dropDownSelectedDefault });
//$("input#search").click(
$("#TotalGen").change(
function () {
var dropDownSelected = $("#TotalGen option:selected").text();
$("#viewPlaceHolder").load("/Movie/SearchByGenGetResult", { gen: dropDownSelected });
}
);
}
);
</script>
<h2>Search By Gen</h2>
<div>
@Html.DisplayName("Genere ")
@Html.DropDownList("TotalGen")
</div>
<div id="viewPlaceHolder"></div>
。这个功能可以为Mac OSX上的根攻击提供额外的保护。
要禁用SIP:
DYLD_FALLBACK_LIBRARY_PATH
以关闭SIP(并csrutil disable
将其重新打开)。这解决了我的问题。有关详细信息:MacWorld article on SIP,Caffe user mailing list。