@Andrei1penguin1

Почему вылезает ошибка при компиляции?

Доброго времени суток, есть код:
#include <stdio.h>
#include <Python.h>

int main() {
  Py_Initialize();
  PyRun_SimpleString("print('Hello!')");
  Py_Finalize();
}

Компиляция запускается следующей командой:
g++ -I C:\Python39\include app.c -o app.exe

И на выходе следующая ошибка:
c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: C:\Users\user\AppData\Local\Temp\cc9ePWZY.o:app.c:(.text+0xf): undefined reference to `_imp__Py_Initialize'
c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: C:\Users\user\AppData\Local\Temp\cc9ePWZY.o:app.c:(.text+0x25): undefined reference to `_imp__PyRun_SimpleStringFlags'
c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: C:\Users\user\AppData\Local\Temp\cc9ePWZY.o:app.c:(.text+0x2c): undefined reference to `_imp__Py_Finalize'
collect2.exe: error: ld returned 1 exit status
  • Вопрос задан
  • 502 просмотра
Пригласить эксперта
Ответы на вопрос 2
wataru
@wataru
Разработчик на С++, экс-олимпиадник.
Какой-то библиотеки не хватает. Надо ее найти и дописать через -L путь к ней и через -l ее имя.
Попробуйте дописать:
-Lc:\Python39\Lib -lpython39
Ответ написан
CityCat4
@CityCat4
Внимание! Изменился адрес почты!
А питоновские либы (собственно и содержащие код функции Py_Initialize()) добавит Пушкин? Ищите, где стоит питон и как называется его основная либа и подключайте ее
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы