[devel] Сборка приложений с libpython

Alexei Mezin alexei.mezin на gmail.com
Пн Дек 18 20:35:08 MSK 2017


У нас python-config выдает флаги компиляции без -lpython2.7

$ python2.7-config --ldflags --cflags
-lpthread -ldl -lutil -lm -Xlinker -export-dynamic
-I/usr/include/python2.7

В результате некоторые configure-скрипты обламываются в сборке тестовой 
программы

configure:18076: gcc -o conftest -g -O2  -I/usr/include/python2.7 
conftest.c  -lpthread -ldl -lutil -lm -Xlinker -export-dynamic >&5
/tmp/.private/alexei/ccQ4nLqA.o: In function `main':
/tmp/gwyddion-2.49/conftest.c:35: undefined reference to `Py_Initialize'
...skip...
#include  <Python.h>
  int
  main ()
  {
  Py_Initialize();
    ;
    return 0;
  }


Программа-то из одной строчки. И попытка ее собрать вроде как 
идеологически правильная -- параметры компиляции и линковки взяты из 
выхлопа python-config.

Это так и должно быть? Или у нас какой-то совершенно особенный подход к 
питону? Потому что в других дистрибутивах на этот configure не жалуются, 
значит там все работает. В Убунте точно есть нужная библиотека в списке.


Подробная информация о списке рассылки Devel