我正在尝试编译一些C代码(CUDA)[1],它依赖于Numpy包:
/cuda-convnet-vs-proj/src/util.cu(69): error : identifier "PyArrayObject" is undefined
我安装了Anaconda(在Windows上),其中包括Python 2.7和Numpy包。 util.cu包含头文件util.cuh,其中包含Python.h。
我甚至不确定这是代码中的问题(缺少定义或头文件),或者Visual Studio没有找到正确的位置。
我是初学者,我该怎么解决这个问题?
这是引用PyArrayObject的代码:
#include <util.cuh>
using namespace std;
MatrixV* getMatrixV(PyObject* pyList) {
if (pyList == NULL) {
return NULL;
}
MatrixV* vec = new MatrixV();
for (int i = 0; i < PyList_GET_SIZE(pyList); i++) {
vec->push_back(new Matrix((PyArrayObject*)PyList_GET_ITEM(pyList, i)));
}
return vec;
}
util.cuh标题包含以下行:
#include <Python.h>
答案 0 :(得分:0)
通过包含ndarraytypes.h来解决,它定义了PyArrayObject。