ld:找不到-lboost_python的库

时间:2014-10-04 02:33:47

标签: python boost homebrew boost-python

我使用brew install --build-from-source --with-python --fresh -vd boost安装了boost。然而,当我在Caffe项目中运行make pycaffe时,我收到此错误:ld: library not found for -lboost_python。我该如何安装该库? find / -name libboost_python*没有任何结果。

3 个答案:

答案 0 :(得分:4)

运行命令brew install boost-python这将使用boost-python支持下载,编译和安装boost包。 graphicsmagick-engine pip包需要boost-python,我遇到了同样的问题。为了让您了解会发生什么,这是命令的输出:

==> Downloading https://downloads.sourceforge.net/project/boost/boost/1.57.0/boost_1_57_0.tar.bz2
######################################################################## 100.0%
==> ./bootstrap.sh --prefix=/usr/local/Cellar/boost-python/1.57.0 --libdir=/usr/local/Cellar/boost-python/1.57.0/lib --with-libraries=python --with-python=python --with-python-root=/System/Library/Frameworks/Python.framework/Versions/2.7
==> ./b2 --build-dir=build-python --stagedir=stage-python python=2.7 --prefix=/usr/local/Cellar/boost-python/1.57.0 --libdir=/usr/local/Cellar/boost-python/1.57.0/lib -d2 -j8 --layout=tagged --user-config=user-config.jam threading=multi,s

您也可以下载,编译和符号链接boost包(这是我最初的工作)但如果默认路径适合您,这会更加简单。

答案 1 :(得分:3)

事实证明,boost 1.56似乎与NVCC有问题,因此不会安装boost_python lib文件。使用boost 1.55安装有效。我用过:

git checkout a252214 /usr/local/Library/Formula/boost.rb
brew install --build-from-source --with-python --fresh -vd boost

感谢this thread

答案 2 :(得分:1)

对我来说,boost-python lib路径中没有这样的libboost_python37.dylib

$ ls /usr/local/Cellar/boost-python3/1.67.0_1/lib
libboost_numpy37-mt.a      libboost_numpy37.a         libboost_python37-mt.dylib libboost_python37.dylib
libboost_numpy37-mt.dylib  libboost_numpy37.dylib     libboost_python37-mt.a     libboost_python37.a

因此创建一个软链接

$ sudo ln -s libboost_python37.dylib libboost_python3.dylib

此问题已解决。

相似的问题:ld: library not found for -lboost_python on MacOS