Boost.Numpy从源安装但无法正常工作
我在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
下的说明进行Boost.NumPy/libs/numpy/doc/cmakeBuild.rst
。 这些说明是:
- mkdir build
- cd build
- cmake ..
- 使
- sudo make install
一切都很好,我在这些命令中没有出现任何错误,所以我认为Boost.Numpy已成功安装在我的系统上。
我试图编译一个简单的C ++程序来检查系统是否可以找到该文件,但它无法正常工作。
C ++文件只包含以下标头:
#include
然后我编译如下:
g++ test.cpp
我收到错误:
test.cpp:1:34: fatal error: boost/python/numpy.hpp: No such file or directory #include ^ 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库?
谢谢。
因为您将标题包括在内
它期望在默认包含文件搜索路径或通过-I
选项提供给编译器的路径的某个目录的某个子目录python
中找到numpy.hpp
但是,该文件实际上是
/usr/local/include/boost/numpy.hpp
没有python
子目录 – 所以你应该把它包含在你的C ++文件中
#include
然后告诉g++
将/usr/local
添加到包含文件搜索路径
g++ -I/usr/local/include test.cpp