我正在尝试使用matplotlib绘制图形:
#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;
int main() {
plt::plot({1,2,3,4});
plt::show();
}
然而,当我点击编译时,我收到以下错误:
/usr/local/include/matplotlibcpp.h:19:12:
fatal error: 'numpy/arrayobject.h' file not found
这是我编译的方式:
g++ main.cpp -std=c++11 -I/usr/include/python2.7 -lpython2.7
请有人解释问题是什么以及如何解决。提前谢谢。
答案 0 :(得分:1)
该错误表示在/usr/include
之类的默认位置找不到numpy标头。
解决方案是找到numpy安装的include文件夹,并使用-I
标志将编译器指向它。
您的命令行应该类似于
g++ main.cpp -std=c++11 -I/usr/include/python2.7 -I/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include -lpython2.7
答案 1 :(得分:1)
我通过在mapplotlibcpp.h顶部添加“#define WITHOUT_NUMPY”标志解决了这个问题