Встраивание Python в C под Windows - PullRequest
0 голосов
/ 17 мая 2018

Я хочу скомпилировать файл .c, содержащий Header Python.h, используя minGW в Windows 10. Моя цель - встроить некоторый python-код в C, и это всего лишь небольшой тест для компиляции.Мой исходный файл выглядит следующим образом:

#include <stdio.h>
#include <C:\Python27\include\Python.h>

int main() 
{
    printf("Hello World from C");

    Py_Initialize();

    PyRun_SimpleString("print('Hello World from Python!!!')");

    Py_Finalize();


    return 0; 
}

Мой make-файл выглядит следующим образом:

all: HelloWorld.c
    gcc -Wall -I C:\Python27\include -L C:\Python27\libs  -o HelloWorld.exe HelloWorld.c -lpython27

Поэтому, если я скомпилирую свой исходный код с этим make-файлом, я получу следующую ошибку:

gcc -Wall -I C:\Python27\include -L C:\Python27\libs  -o HelloWorld.exe HelloWorld.c -lpython27
C:\Users\ga96dux\AppData\Local\Temp\ccUQs2pM.o:HelloWorld.c:(.text+0x1b): undefined reference to `_imp__Py_Initialize'
C:\Users\ga96dux\AppData\Local\Temp\ccUQs2pM.o:HelloWorld.c:(.text+0x31): undefined reference to `_imp__PyRun_SimpleStringFlags'
C:\Users\ga96dux\AppData\Local\Temp\ccUQs2pM.o:HelloWorld.c:(.text+0x38): undefined reference to `_imp__Py_Finalize'
collect2.exe: error: ld returned 1 exit status
make: *** [all] Error 1

Я перепробовал все, что смог найти в Интернете, но он не работает, есть ли что-то не так с make-файлом, есть ли предложения, как решить эту проблему?Большое спасибо!

...