我在 Ubuntu 14.04 上并且已经libboost-all-dev
安装(Boost 1.54),我需要安装 Boost.NumPy 库。
我知道 NumPy 带有 Boost 1.64+,但我现在需要坚持使用 1.54,因此我需要从目前已弃用的这个repo 安装。
我按照 下的说明进行操作Boost.NumPy/libs/numpy/doc/cmakeBuild.rst
。这些说明是:
- mkdir 构建
- 光盘构建
- 制作..
- 制作
- 须藤使安装
很好,在这些命令期间我没有收到任何错误,所以我假设 Boost.Numpy 已成功安装在我的系统上。
我尝试编译一个简单的 C++ 程序来检查系统是否可以找到该文件但它不工作。
C++ 文件仅包含以下标头:
#include <boost/python/numpy.hpp>
然后我像这样编译:
g++ test.cpp
我得到错误:
test.cpp:1:34: fatal error: boost/python/numpy.hpp: No such file or directory
#include <boost/python/numpy.hpp>
^
compilation terminated.
我试图搜索头文件,我可以看到它在那里。
$ sudo find / -name "numpy.hpp"
/usr/local/include/boost/numpy.hpp
我还在我的.bashrc
文件中添加了以下内容:
export INCLUDE="/usr/local/include/boost:$INCLUDE"
export LIBRARY_PATH="/usr/local/include/boost:$LIBRARY_PATH"
export CFLAGS="-I/usr/local/include/boost"
依然没有。
那么为什么 Boost.Numpy 没有正确安装呢?我想念什么?文档非常少,我找不到其他任何东西。
一般来说,我怎样才能知道我安装的 Boost 库是否可用于系统?
谢谢。
由于您将标题包含为
它希望在默认包含文件搜索路径或通过选项提供给编译器的路径上的某个目录
numpy.hpp
的子目录中找到python
boost
-I
但是,该文件实际上位于
没有
python
子目录 - 所以你应该将它包含在你的 C++ 文件中然后告诉
g++
添加/usr/local
到包含文件搜索路径