Le 15.07.17 à 01:14, Rene Rivera via Boost a écrit :
On Fri, Jul 14, 2017 at 7:23 AM, Raffi Enficiaud via Boost-users < boost-users@lists.boost.org> wrote:
As I said in a previous post, I cannot get boost.python to build on Windows: the target is just ignored (see stack trace below).
Missed that post :-(
I think there is a bug in .\tools\build\src\tools\python.jam
A highly probable statement all on its own :-)
concerning the version computation: the variable "major-minor" is not set properly if "version" is optional.
In this block:
============= ("rule configure") if $(version) { if ! $(version) in [ feature.values python ] { feature.extend python : $(version) ; py$(major-minor[1])-version ?= $(version) ; =============
The variable "major-minor" is empty.
The "if" in the following block prevents from computing major-minor as "version" is optional and is not set:
============= local major-minor ; if $(version) { major-minor = [ split-version $(version) ] ; version = $(major-minor:J=.) ; } =============
I believe this can be fixed by recomputing "major-minor" in this block, after "version" has been inferred.
============= if $(cmd) { debug-message ...requested configuration matched! ;
exec-prefix = $(sys.exec_prefix) ;
compute-default-paths $(target-os) : $(sys.version) : $(sys.prefix) : $(sys.exec_prefix) ;
version = $(sys.version) ; interpreter-cmd ?= $(cmd) ; cmds-to-try = ; # All done. } =============
Seems reasonable.. Can you put up a PR for that?
There we go: https://github.com/boostorg/build/pull/212 This fixes my problem on Windows, but I have not tried on other platforms. Cheers, Raffi