Message 321650 - Python tracker

Message321650

Author tobik
Recipients tobik
Date 2018-07-14.11:21:50
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1531567311.02.0.56676864532.issue34111@psf.upfronthosting.co.za>
In-reply-to
Content
When symlinking python3.6-config to another location, it starts
outputting bogus paths.  It's convenient to symlink the system
python3.6-config to somewhere else in PATH to make sure the build
of an application with a hardcoded use of python3-config is using
the right Python version.  This is something that we would like to
do in FreeBSD Ports instead of having to patch build files.

It works fine with python2.7-config.  However when I try a similar
thing with python3.6-config it starts outputting bogus paths.  For
example

$ pwd
/home/tobias
$ python2.7-config --includes
-I/usr/local/include/python2.7 -I/usr/local/include/python2.7
$ ln -s /usr/local/bin/python2.7-config python2-config
$ ./python2-config --includes
-I/usr/local/include/python2.7 -I/usr/local/include/python2.7
$ python3.6-config --includes
-I/usr/local/include/python3.6m -I/usr/local/include/python3.6m
$ ln -s /usr/local/bin/python3.6-config python3-config
$ ./python3-config --includes
-I/home/include/python3.6m -I/home/include/python3.6m

It would be nice if this could just work.  This was on FreeBSD but
the same problem exists on e.g. Void Linux too.

The problem seems to be that the path to the original script is not
resolved properly when trying to determine the install prefix.
Adding realpath(1) to python-config seems to solve it.
History
Date User Action Args
2018-07-14 11:21:51tobiksetrecipients: + tobik
2018-07-14 11:21:51tobiksetmessageid: <1531567311.02.0.56676864532.issue34111@psf.upfronthosting.co.za>
2018-07-14 11:21:50tobiklinkissue34111 messages
2018-07-14 11:21:50tobikcreate