boostorg / boostorg/python

Wrong NumPy headers included when building boost.numpy with multiple configured Python versions

Open
#238 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
537
Forks
223
Avg merge
11h 22m
Merged PRs (30d)
2

Description

Having configured multiple Python-installations in python_config.jam, each like
```
using python
: 3.7 # version
: C:\\Python37-x64\\ # cmd-or-prefix
: C:\\Python37-x64\\include # includes
: C:\\Python37-x64\\libs # libraries
: 64 # condition
;
```
The call to
`bjam target-os=windows address-model=64 debug-symbols=on debug-store=database --user-config=python_config.jam --debug-configuration --debug-generator python=3.7 -d+2 --with-python stage`

Shows in its output that bjam correctly detects for each of the configured Python installations if NumPy is available or not ("enabled"/"disabled").

However, the output due to -d+2, shows that bjam includes the wrong NumPy headers. It seems that it includes them from the respective directory of whichever Python-installation comes last in python_config.jam and that has NumPy "enabled".

Additionally, even if the debug-configuration-output says that NumPy is "disabled" for a certain Python-installation, bjam will still build boost.numpy - again, including the NumPy headers for whichever installation comes last in python_config.jam that has NumPy "enabled".

Building boost 1.68.0 with VS2017 / 15.8.8 on Windows 10 x64 for Windows x64.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.