我尝试用下面的代码在C中调用Python代码:
#include <stdio.h>
#include <Python.h>
int main()
{
PyObject* pInt;
Py_Initialize();
PyRun_SimpleString("print('This is Python in C')");
Py_Finalize();
printf("\n");
return 0;
} 并尝试使用以下命令进行编译:
gcc python_test_in_c.c 但是,它会返回一个错误,返回如下内容:
undefined referance to `__imp __Py_Initialise`
undefined referance to `__imp__PyRun_SimpleSringFlags`
undefined referance to `__imp__Py_Finalise`
collect2.exe: error: ld returned 1 exit status哪里出了问题?我该如何解决这个问题呢?
任何帮助都将不胜感激
附注:我不确定,但这是否与我在位于C:/MinGW的MinGW的包含文件中复制了Python ' include‘文件(包含Python.h)有关
更新:我现在了解到这是可以做的,但被认为是糟糕的做法。
发布于 2017-07-27 04:04:08
您没有链接到python库...
尝试:
gcc python_test_in_c.c -lpython3.6m将3.6更改为您选择的版本...
https://stackoverflow.com/questions/45336176
复制相似问题