Boost logo

Boost-Build :

Subject: [Boost-build] Linux Builds Failing with Python
From: Tom Kent (lists_at_[hidden])
Date: 2016-07-22 21:25:57


So my linux builds generally have a user-config.jam (on Ubuntu 14.04) like:

using gcc : 5 : g++-5 : ; # Default is same as 5~c++98
using gcc : 5~c++98 : g++-5 : <cxxflags>-std=c++98 ;
using gcc : 5~gnu98 : g++-5 : <cxxflags>-std=gnu++98 ;
using gcc : 5~c++11 : g++-5 : <cxxflags>-std=c++11 ;
using gcc : 5~gnu11 : g++-5 : <cxxflags>-std=gnu++11 ;
using gcc : 5~c++14 : g++-5 : <cxxflags>-std=c++14 ;
using gcc : 5~gnu14 : g++-5 : <cxxflags>-std=gnu++14 ;
using gcc : 5~c++1z : g++-5 : <cxxflags>-std=c++1z ;
using gcc : 5~gnu1z : g++-5 : <cxxflags>-std=gnu++1z ;
using gcc : 5~c++1z~O2 : g++-5 : <cxxflags>-std=c++1z -O2 ;
using gcc : 5~c++1z~warn : g++-5 : <cxxflags>-std=c++1z -Wall -Wextra ;

using python
: 2.7 # version
: # Interpreter/path to dir
: /usr/include/python2.7 # includes
: /usr/lib/x86_64-linux-gnu # libs
: # conditions
;

using python
: 3.4 # version
: # Interpreter/path to dir
: /usr/include/python3.4 # includes
: /usr/lib/x86_64-linux-gnu # libs
: # conditions
;

In the last few days, all of my builds have been failing, with b2
complaining at the end:

notice: using gcc ranlib :: <toolset>gcc-5~c++1z~warn :: /usr/bin/ranlib
warning: toolset gcc initialization: can not find tool windres
warning: initialized from /home/boost/user-config.jam:11
notice: using rc compiler :: <toolset>gcc-5~c++1z~warn :: /usr/bin/as
notice: [python-cfg] Configuring python...
notice: [python-cfg] user-specified version: "2.7"
notice: [python-cfg] user-specified includes: "/usr/include/python2.7"
notice: [python-cfg] user-specified libraries: "/usr/lib/x86_64-linux-gnu"
notice: [python-cfg] Checking interpreter command "python2.7"...
notice: [python-cfg] running command 'python2.7 -c "from sys import *;
print('version=%d.%d\nplatform=%s\nprefix=%s\nexe
c_prefix=%s\nexecutable=%s' %
(version_info[0],version_info[1],platform,prefix,exec_prefix,executable))"
2>&1'
notice: [python-cfg] ...requested configuration matched!
notice: [python-cfg] Details of this Python configuration:
notice: [python-cfg] interpreter command: "python2.7"
notice: [python-cfg] include path: "/usr/include/python2.7"
notice: [python-cfg] library path: "/usr/lib/x86_64-linux-gnu"
notice: [python-cfg] Configuring python...
notice: [python-cfg] user-specified version: "3.4"
notice: [python-cfg] user-specified includes: "/usr/include/python3.4"
notice: [python-cfg] user-specified libraries: "/usr/lib/x86_64-linux-gnu"
notice: [python-cfg] Checking interpreter command "python3.4"...
notice: [python-cfg] running command 'python3.4 -c "from sys import *;
print('version=%d.%d\nplatform=%s\nprefix=%s\nexe
c_prefix=%s\nexecutable=%s' %
(version_info[0],version_info[1],platform,prefix,exec_prefix,executable))"
2>&1'
notice: [python-cfg] ...requested configuration matched!
notice: [python-cfg] Details of this Python configuration:
notice: [python-cfg] interpreter command: "python3.4"
notice: [python-cfg] include path: "/usr/include/python3.4"
notice: [python-cfg] library path: "/usr/lib/x86_64-linux-gnu"
notice: [zlib] Using pre-installed library
notice: [zlib] Condition
notice: iostreams: using prebuilt bzip2
/var/boost/run/boost_bb/src/build/feature.jam:782: in expand-composites
from module feature
error: explicitly-specified values of non-free feature <python> conflict
error: existing values: 2.7 3.4
error: value from expanding <python>3.4 : 3.4
/var/boost/run/boost_bb/src/build/feature.jam:867: in feature.expand from
module feature
/var/boost/run/boost_bb/src/build/targets.jam:1070: in
evaluate-requirements from module targets
/var/boost/run/boost_bb/src/build/targets.jam:1112: in common-properties2
from module targets
/var/boost/run/boost_bb/src/build/targets.jam:977: in
targets.common-properties from module targets
/var/boost/run/boost_bb/src/build/targets.jam:1303: in
class_at_basic-target.generate from module object(alias-target-class
)@2066
/var/boost/run/boost_bb/src/build/targets.jam:774: in generate-really from
module object(main-target)@2075
/var/boost/run/boost_bb/src/build/targets.jam:746: in
class_at_main-target.generate from module object(main-target)@2075
/var/boost/run/boost_bb/src/build-system.jam:714: in load from module
build-system
/var/boost/run/boost_bb/src/kernel/modules.jam:295: in import from module
modules
/var/boost/run/boost_bb/src/kernel/bootstrap.jam:139: in boost-build from
module
/var/boost/run/boost_regression/boost-build.jam:57: in module scope from
module
# Searching for "process_jam_log" in
"/var/boost/run/boost_regression/stage/bin"...
Traceback (most recent call last):
  File "run.py", line 71, in <module>
    runner(root)
  File "/var/boost/run/boost_regression_src/regression.py", line 287, in
__init__
    self.main()
  File "/var/boost/run/boost_regression_src/regression.py", line 624, in
main
    getattr(self,action_m)()
  File "/var/boost/run/boost_regression_src/regression.py", line 581, in
command_regression
    self.command_setup()
  File "/var/boost/run/boost_regression_src/regression.py", line 352, in
command_setup
    self.build_if_needed(self.process_jam_log,self.pjl_toolset)
  File "/var/boost/run/boost_regression_src/regression.py", line 715, in
build_if_needed
    tool[ 'build_path' ] = self.tool_path( tool )
  File "/var/boost/run/boost_regression_src/regression.py", line 740, in
tool_path
    , '\n'.join( [ name_or_spec[ 'path' ], build_dir ] )
Exception: Cannot find "process_jam_log" in any of the following locations:
/var/boost/run/boost_regression/stage/bin/process_jam_log
/var/boost/run/boost_regression/stage/bin

Any thoughts what might be causing this new error?
Tom



Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk