Python C-API 和 Numpy:import_array 上的核心转储
//testNumpy.c
#include<Python.h>
#include<numpy/arrayobject.h>
#include<stdio.h>
int main(){
printf("import_array\n");fflush(stdout);
import_array();
printf("import_array done\n");fflush(stdout);
}
$ gcc -I/usr/include/python2.6 -lpython2.6 testNumpy.c&&./a.out
import_array
Segmentation fault (core dumped)
在这样一个简单的程序上我可能做错了什么?我正在撕扯我的头发:-)
//testNumpy.c
#include<Python.h>
#include<numpy/arrayobject.h>
#include<stdio.h>
int main(){
printf("import_array\n");fflush(stdout);
import_array();
printf("import_array done\n");fflush(stdout);
}
$ gcc -I/usr/include/python2.6 -lpython2.6 testNumpy.c&&./a.out
import_array
Segmentation fault (core dumped)
What could I possibly be doing wrong on such a simple program? I'm tearing my hair out :-)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,您没有正确初始化 Python。在尝试初始化 NumPy 之前调用 Py_Initialize()。
For starters, you did not initialize Python properly. Call Py_Initialize() before trying to initialize NumPy.