首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用C++调用Python-3函数

用C++调用Python-3函数
EN

Stack Overflow用户
提问于 2017-07-27 03:49:12
回答 1查看 865关注 0票数 0

我尝试用下面的代码在C中调用Python代码:

代码语言:javascript
复制
#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;
} 

并尝试使用以下命令进行编译:

代码语言:javascript
复制
gcc python_test_in_c.c 

但是,它会返回一个错误,返回如下内容:

代码语言:javascript
复制
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)有关

更新:我现在了解到这是可以做的,但被认为是糟糕的做法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-27 04:04:08

您没有链接到python库...

尝试:

代码语言:javascript
复制
gcc python_test_in_c.c -lpython3.6m

将3.6更改为您选择的版本...

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45336176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档