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

Dmitry V. Levin ldv на altlinux.org
Ср Дек 20 14:17:52 MSK 2017


On Wed, Dec 20, 2017 at 09:21:23AM +0300, Alexei Mezin wrote:
> 19.12.2017 17:47, Dmitry V. Levin пишет:
> 
> > Это неправильно, в --ldflags не должно быть никаких -l, только -L.
> > Для -l есть --libs.
> 
> Однако в python-config --ldflags есть аж 4 штуки -l и ни одной -L.
> 
> Верно ли я понял, что правильным путем выхода из ситуации будет 
> объяснение сборочным скриптам, что опции линковки для приложений, 
> которым действительно нужна libpython, надо брать из python-config 
> --libs? В данный момент это окажется всего одна опция -lpython2.7.

$ python2.7-config --ldflags
-lpthread -ldl -lutil -lm -Xlinker -export-dynamic
$ python2.7-config --libs   
-lpthread -ldl -lutil -lm -lpython2.7

В нормальной ситуации --ldflags должен выводить опции, --libs библиотеки,
использовать надо обе так, как это принято.
Но python2.7-config не следует этим правилам, там всё перепутано.

python3.5-config немного лучше в этом плане:

$ python3.5-config --ldflags
-L/usr/lib64/python3.5/config-3.5m -lpython3.5m -lpthread -ldl -lutil -lm -Xlinker -export-dynamic
$ python3.5-config --libs
-lpython3.5m -lpthread -ldl -lutil -lm


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 801 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20171220/f30319cc/attachment.bin>


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