[release] Boost 1.64.0 Beta 1
Boost release 1.64.0 beta 1 is now available at: https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/source/ The SHA256 checksums are as follows: 8f0ba6b73fad15115049f9b3e7e27eae43be10a94b51a57142f3a27e55ef4beb boost_1_64_0_b1.7z b5c5abf127a3f723dafcc7cf55876c1bda9f014fb1b117f6a7f769e3cc407c4f boost_1_64_0_b1.tar.bz2 a7fe98a9a9f615f6fa68d8ea09ce725d19e3a4fe4719c21c9db29dff88b3b6e3 boost_1_64_0_b1.tar.gz 593005661af8dfe132b2b16bc2cd41339e6acd58456913f353d765090d7868f7 boost_1_64_0_b1.zip For details of what's in the release, see < http://www.boost.org/users/history/version_1_64_0.html>. Note that the links to files on this web page are for the final release - use the link above to get the beta files. There are also pre-built libraries provided by Tom Kent here: https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/binaries/ Please download the beta, give it a try, and report any problems you encounter. Thanks, -- The Boost Release Team -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine
HRESULT was unexpected at this time.
boost_1_64_0\tools\build\src\engine>
On Thu, Mar 23, 2017 at 3:11 PM, Rene Rivera via Boost
Boost release 1.64.0 beta 1 is now available at:
https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/source/
The SHA256 checksums are as follows:
8f0ba6b73fad15115049f9b3e7e27eae43be10a94b51a57142f3a27e55ef4beb boost_1_64_0_b1.7z b5c5abf127a3f723dafcc7cf55876c1bda9f014fb1b117f6a7f769e3cc407c4f boost_1_64_0_b1.tar.bz2 a7fe98a9a9f615f6fa68d8ea09ce725d19e3a4fe4719c21c9db29dff88b3b6e3 boost_1_64_0_b1.tar.gz 593005661af8dfe132b2b16bc2cd41339e6acd58456913f353d765090d7868f7 boost_1_64_0_b1.zip
For details of what's in the release, see < http://www.boost.org/users/history/version_1_64_0.html>. Note that the links to files on this web page are for the final release - use the link above to get the beta files.
There are also pre-built libraries provided by Tom Kent here:
https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/binaries/
Please download the beta, give it a try, and report any problems you encounter.
Thanks,
-- The Boost Release Team
-- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
-- Olaf
On 23 March 2017 at 17:04, Olaf van der Spek via Boost
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
bootstrap.bat bootstrap.bat vc14 bootstrap.bat vc141 All succeed for me on W10 w/ VS2015 and VS2017 Best regards, -- Mateusz Loskot, http://mateusz.loskot.net
Should Boost.Process (accepted Dec 2016) be included in 1.64? The library's github page suggests it may appear in 1.64. https://github.com/boostorg/process And what looks like a draft 1.64 release notes page suggests it's a new library for 1.64. http://www.boost.org/doc/libs/develop/index.html However I don't see files such as process.hpp or child.hpp in the 1.64 beta tarball (boost_1_64_0_b1.tar.bz2). Thanks, Paul
On Thu, Mar 23, 2017 at 12:05 PM, Paul Fee via Boost
Should Boost.Process (accepted Dec 2016) be included in 1.64? The library's github page suggests it may appear in 1.64.
https://github.com/boostorg/process
And what looks like a draft 1.64 release notes page suggests it's a new library for 1.64. http://www.boost.org/doc/libs/develop/index.html
However I don't see files such as process.hpp or child.hpp in the 1.64 beta tarball (boost_1_64_0_b1.tar.bz2).
This is unfortunate.. It was supposed to be part of the release AFAIK. -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail
Rene Rivera via Boost wrote:
On Thu, Mar 23, 2017 at 12:05 PM, Paul Fee via Boost
wrote: Should Boost.Process (accepted Dec 2016) be included in 1.64? I don't see files such as process.hpp or child.hpp in the 1.64 beta tarball (boost_1_64_0_b1.tar.bz2).
This is unfortunate.. It was supposed to be part of the release AFAIK.
Can this be fixed before 1.64 is released?
On Thu, Mar 23, 2017 at 5:36 PM, Mateusz Loskot
On 23 March 2017 at 17:04, Olaf van der Spek via Boost
wrote: VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
bootstrap.bat bootstrap.bat vc14 bootstrap.bat vc141
All succeed for me on W10 w/ VS2015 and VS2017
VS2017 / W7: PS C:\vc\boost_1_64_0> .\bootstrap.bat 'cl' is not recognized as an internal or external command, operable program or batch file. PS C:\vc\boost_1_64_0> .\bootstrap.bat vc14 'cl' is not recognized as an internal or external command, operable program or batch file. Builds 'OK' via a dev prompt, though there's still '"C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.10.25017/bin/HostX86/vcvarsall.bat"' is not recognized as an internal or external command, Output names are still wrong: libboost_atomic-vc-mt-1_64.lib -- Olaf
On Thu, Mar 23, 2017 at 2:37 PM, Olaf van der Spek via Boost < boost@lists.boost.org> wrote:
On Thu, Mar 23, 2017 at 5:36 PM, Mateusz Loskot
wrote: On 23 March 2017 at 17:04, Olaf van der Spek via Boost
wrote: VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
bootstrap.bat bootstrap.bat vc14 bootstrap.bat vc141
All succeed for me on W10 w/ VS2015 and VS2017
VS2017 / W7:
PS C:\vc\boost_1_64_0> .\bootstrap.bat 'cl' is not recognized as an internal or external command, operable program or batch file.
It's a know issue with the vs2017 detection code and the powershell version. If you can manage to update to a powershell >= 3 it should work. -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail
On Thu, Mar 23, 2017 at 8:51 PM, Rene Rivera via Boost
On Thu, Mar 23, 2017 at 2:37 PM, Olaf van der Spek via Boost < boost@lists.boost.org> wrote:
On Thu, Mar 23, 2017 at 5:36 PM, Mateusz Loskot
wrote: On 23 March 2017 at 17:04, Olaf van der Spek via Boost
wrote: VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
bootstrap.bat bootstrap.bat vc14 bootstrap.bat vc141
All succeed for me on W10 w/ VS2015 and VS2017
VS2017 / W7:
PS C:\vc\boost_1_64_0> .\bootstrap.bat 'cl' is not recognized as an internal or external command, operable program or batch file.
It's a know issue with the vs2017 detection code and the powershell version. If you can manage to update to a powershell >= 3 it should work.
Is PS3 required even if cl is already in the path via the dev prompt shortcut? And what about the VS2015 / W10 failure? -- Olaf
On Thu, Mar 23, 2017 at 11:04 AM, Olaf van der Spek
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
Could you try building b2.exe directly: === cd tools\build\src\engine built.bat === And posting the output? -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net -- rrivera/acm.org (msn) - grafikrobot/aim,yahoo,skype,efnet,gmail
On Thu, Mar 23, 2017 at 8:57 PM, Rene Rivera
On Thu, Mar 23, 2017 at 11:04 AM, Olaf van der Spek
wrote: VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
Could you try building b2.exe directly:
=== cd tools\build\src\engine built.bat ===
And posting the output?
PS C:\vc\boost_1_64_0\tools\build\src\engine> .\build.bat HRESULT was unexpected at this time. It seems to be this bit of code that causes the error but I have no clue why. if "_%BOOST_JAM_TOOLSET_ROOT%_" == "__" ( if NOT "_%VS150COMNTOOLS%_" == "__" ( set "BOOST_JAM_TOOLSET_ROOT=%VS150COMNTOOLS%..\..\VC\" )) Hmm echo "_%BOOST_JAM_TOOLSET_ROOT%_" "_Exception calling "Query" with "1" argument(s): "Error HRESULT E_FAIL has been returned from a call to a COM component."\VC\_" -- Olaf
On Thu, Mar 23, 2017 at 11:04 AM, Olaf van der Spek via Boost < boost@lists.boost.org> wrote:
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
boost_1_64_0\tools\build\src\engine>
I just made some VMs one with Windows 2012R2 server and one with Windows 10 each with only VS2015 professional on it. bootstrap.bat ran fine there and the resulting b2.exe seemed to be working. Tom
Hi Tom, Am Donnerstag, 23. März 2017, 17:42:36 CET schrieb Tom Kent via Boost:
On Thu, Mar 23, 2017 at 11:04 AM, Olaf van der Spek via Boost <
boost@lists.boost.org> wrote:
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
boost_1_64_0\tools\build\src\engine>
I just made some VMs one with Windows 2012R2 server and one with Windows 10 each with only VS2015 professional on it. bootstrap.bat ran fine there and the resulting b2.exe seemed to be working.
Thanks for testing this. a simple "bootstrap.bat" without a toolset tries to auto-detect the most current available vc compiler, in Olaf's case this would be VC2017. And the auto-detection code seems to need at least PowerShell 5.0 at the moment. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! * voice: ++49 4257 300 ! Fährstraße 1 * fax : ++49 4257 300 ! 31609 Balge/Sebbenhausen * jhunold@gmx.eu ! Germany
On Thu, Mar 23, 2017 at 11:42 PM, Tom Kent via Boost
On Thu, Mar 23, 2017 at 11:04 AM, Olaf van der Spek via Boost < boost@lists.boost.org> wrote:
VS2015 / W10:
boost_1_64_0>bootstrap.bat
Building Boost.Build engine HRESULT was unexpected at this time.
boost_1_64_0\tools\build\src\engine>
I just made some VMs one with Windows 2012R2 server and one with Windows 10 each with only VS2015 professional on it. bootstrap.bat ran fine there and the resulting b2.exe seemed to be working.
I'm using 2015 Community, could that make the difference?
On Fri, Mar 24, 2017 at 7:14 AM, Jürgen Hunold via Boost
VS2015 / W10:
Thanks for testing this. a simple "bootstrap.bat" without a toolset tries to auto-detect the most current available vc compiler, in Olaf's case this would be VC2017. And the auto-detection code seems to need at least PowerShell 5.0 at the moment.
Note that this is about VS2015 / W10, W10 ships with the proper PS. -- Olaf
On Thu, Mar 23, 2017 at 9:11 AM, Rene Rivera via Boost < boost@lists.boost.org> wrote:
Boost release 1.64.0 beta 1 is now available at:
https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/source/
The SHA256 checksums are as follows:
8f0ba6b73fad15115049f9b3e7e27eae43be10a94b51a57142f3a27e55ef4beb boost_1_64_0_b1.7z b5c5abf127a3f723dafcc7cf55876c1bda9f014fb1b117f6a7f769e3cc407c4f boost_1_64_0_b1.tar.bz2 a7fe98a9a9f615f6fa68d8ea09ce725d19e3a4fe4719c21c9db29dff88b3b6e3 boost_1_64_0_b1.tar.gz 593005661af8dfe132b2b16bc2cd41339e6acd58456913f353d765090d7868f7 boost_1_64_0_b1.zip
For details of what's in the release, see < http://www.boost.org/users/history/version_1_64_0.html>. Note that the links to files on this web page are for the final release - use the link above to get the beta files.
There are also pre-built libraries provided by Tom Kent here:
https://dl.bintray.com/boostorg/beta/1.64.0.beta.1/binaries/
Please download the beta, give it a try, and report any problems you encounter.
I was able to build, link, and run on all visual studio version 8.0 - 14.1 32&64. toolset arch compile Link Execute msvc-8.0 32 X X X msvc-8.0 64 X X X msvc-9.0 32 X X X msvc-9.0 64 X X X msvc-10.0 32 X X X msvc-10.0 64 X X X msvc-11.0 32 X X X msvc-11.0 64 X X X msvc-12.0 32 X X X msvc-12.0 64 X X X msvc-14.0 32 X X X msvc-14.0 64 X X X msvc-14.1 32 X X X msvc-14.1 64 X X X Compile means that the b2 command completed without errors Install means that the installers for the respective version were generated Link means that visual studio was able to link a sample executable to a library (libboost_thread-vcXXX-mt[-gd]-1_XX.lib) generated Execute means that the linked program executed without errors. Tom
On Thu, Mar 23, 2017 at 3:11 PM, Rene Rivera via Boost
Please download the beta, give it a try, and report any problems you encounter.
I find it hard to keep track of beta / release related issues. Would it be possible to use a github issue tracker for those? -- Olaf
On 03/23/2017 03:11 PM, Rene Rivera via Boost wrote:
Boost release 1.64.0 beta 1 is now available at: Please download the beta, give it a try, and report any problems you encounter.
Building MPI module fails because MPI is referring to internal
serialization headers that no longer exist.
gcc.compile.c++
python-build/boost/bin.v2/libs/mpi/build/gcc-6/release/threading-multi/broadcast.o
"g++" -pthread -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_MPI_DYN_LINK=1
-DBOOST_MPI_SOURCE=1 -DNDEBUG -I"."
-I"/usr/lib64/mpi/gcc/openmpi/include"
-I"/usr/lib64/mpi/gcc/openmpi/include/openmpi"
-I"/usr/lib64/mpi/gcc/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent"
-I"/usr/lib64/mpi/gcc/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent/include"
-I"/usr/lib64/mpi/gcc/openmpi/include/openmpi/opal/mca/hwloc/hwloc191/hwloc/include"
-c -o
"python-build/boost/bin.v2/libs/mpi/build/gcc-6/release/threading-multi/broadcast.o"
"libs/mpi/src/broadcast.cpp"
In file included from ./boost/mpi/detail/mpi_datatype_oarchive.hpp:18:0,
from ./boost/mpi/detail/mpi_datatype_cache.hpp:13,
from ./boost/mpi/datatype.hpp:27,
from ./boost/mpi/communicator.hpp:22,
from ./boost/mpi/collectives.hpp:21,
from ./boost/mpi/collectives_fwd.hpp:19,
from ./boost/mpi/collectives/broadcast.hpp:11,
from libs/mpi/src/broadcast.cpp:10:
./boost/mpi/detail/mpi_datatype_primitive.hpp:28:51: fatal error:
boost/serialization/detail/get_data.hpp: No such file or directory
#include
Am 23.03.2017 um 15:11 schrieb Rene Rivera via Boost:
Boost release 1.64.0 beta 1 is now available at:
[...]
Please download the beta, give it a try, and report any problems you encounter.
I tried compiling it on an Ubuntu 16.04 (x86_64) machine with the following compilers: * GCC 4.8 with C++11 (and libstdc++) * GCC 6 with C++14 (and libstdc++) * Clang 3.8 with C++14 and libc++ GCC 6 and Clang 3.8 succeeded, GCC 4.8 failed. The error can be seen at the end of this email. Additionally, I realized two other problems: 1. Using Boost.Build option "--build-type=complete" does not work (only "-build-type=minimal" works). Before compilation even started it fails like this: error: Name clash for '
libboost_atomic-gcc48-mt-d-1_64.a' error: error: Tried to build the target twice, with property sets having error: these incompatible properties: error: error: - <dll-path>/opt/BENOCS/gcc48/bin error: - none error: error: Please make sure to have consistent requirements for these error: properties everywhere in your project, especially for install error: targets. 2. The other problem is not specific to this Boost beta but instead existed from the beginning. When using Boost-Build option "--layout=versioned" the generated libraries' names should contain the compiler-tag and its version. However, this stopped working for GCC since the release of GCC 5. It now misses the compiler's version. I assume it has something to do with GCC changing its version-scheme where the major-version is increased for each new compiler release. Hope that helps, Deniz Bahadir PS: The following is the error output when compiling with GCC 4.8: common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8 common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/algorithm.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/round_robin.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/shared_work.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/work_stealing.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/barrier.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/condition_variable.o gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o libs/fiber/src/context.cpp: In constructor ‘boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)’: libs/fiber/src/context.cpp:230:14: error: call of overloaded ‘callcc(const std::allocator_arg_t&, const boost::context::preallocated&, const default_stack&, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5)’ is ambiguous }); ^ libs/fiber/src/context.cpp:230:14: note: candidates are: In file included from ./boost/fiber/context.hpp:27:0, from libs/fiber/src/context.cpp:7: ./boost/context/continuation.hpp:468:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::preallocated; Fn = const boost::context::basic_fixedsize_stackboost::context::stack_traits&; Arg = {boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}] callcc( std::allocator_arg_t, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:482:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5; Arg = {}] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:513:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn) { ^ ./boost/context/continuation.hpp:456:1: note: boost::context::continuation boost::context::callcc(Fn&&, Arg ...) [with Fn = const std::allocator_arg_t&; Arg = {boost::context::preallocated, boost::context::basic_fixedsize_stackboost::context::stack_traits, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}; <template-parameter-1-3> = void] callcc( Fn && fn, Arg ... arg) { ^ "g++-4.8" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -m64 -m64 -fpic -std=c++11 -m64 -fpic -DBOOST_ALL_NO_LIB=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DNDEBUG -I"." -c -o "/home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o" "libs/fiber/src/context.cpp" ...failed gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o... ...failed updating 1 target... ...updated 13574 targets...
Am 27.03.2017 um 11:03 schrieb Deniz Bahadir via Boost:
Am 23.03.2017 um 15:11 schrieb Rene Rivera via Boost:
Boost release 1.64.0 beta 1 is now available at:
[...]
Please download the beta, give it a try, and report any problems you encounter.
I tried compiling it on an Ubuntu 16.04 (x86_64) machine with the following compilers:
* GCC 4.8 with C++11 (and libstdc++) * GCC 6 with C++14 (and libstdc++) * Clang 3.8 with C++14 and libc++
GCC 6 and Clang 3.8 succeeded, GCC 4.8 failed. The error can be seen at the end of this email.
Additionally, I realized two other problems:
1. Using Boost.Build option "--build-type=complete" does not work (only "-build-type=minimal" works). Before compilation even started it fails like this:
error: Name clash for '
libboost_atomic-gcc48-mt-d-1_64.a'
error: error: Tried to build the target twice, with property sets having error: these incompatible properties: error: error: - <dll-path>/opt/BENOCS/gcc48/bin error: - none error: error: Please make sure to have consistent requirements for these error: properties everywhere in your project, especially for install error: targets.
2. The other problem is not specific to this Boost beta but instead existed from the beginning. When using Boost-Build option "--layout=versioned" the generated libraries' names should contain the compiler-tag and its version. However, this stopped working for GCC since the release of GCC 5. It now misses the compiler's version. I assume it has something to do with GCC changing its version-scheme where the major-version is increased for each new compiler release.
Hope that helps, Deniz Bahadir
PS: The following is the error output when compiling with GCC 4.8:
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/algorithm.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/round_robin.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/shared_work.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/work_stealing.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/barrier.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/condition_variable.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o
libs/fiber/src/context.cpp: In constructor ‘boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)’: libs/fiber/src/context.cpp:230:14: error: call of overloaded ‘callcc(const std::allocator_arg_t&, const boost::context::preallocated&, const default_stack&, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5)’ is ambiguous }); ^ libs/fiber/src/context.cpp:230:14: note: candidates are: In file included from ./boost/fiber/context.hpp:27:0, from libs/fiber/src/context.cpp:7: ./boost/context/continuation.hpp:468:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::preallocated; Fn = const boost::context::basic_fixedsize_stackboost::context::stack_traits&; Arg = {boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}] callcc( std::allocator_arg_t, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:482:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5; Arg = {}] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:513:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn) { ^ ./boost/context/continuation.hpp:456:1: note: boost::context::continuation boost::context::callcc(Fn&&, Arg ...) [with Fn = const std::allocator_arg_t&; Arg = {boost::context::preallocated, boost::context::basic_fixedsize_stackboost::context::stack_traits, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}; <template-parameter-1-3> = void] callcc( Fn && fn, Arg ... arg) { ^
"g++-4.8" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -m64 -m64 -fpic -std=c++11 -m64 -fpic -DBOOST_ALL_NO_LIB=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DNDEBUG -I"." -c -o "/home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o" "libs/fiber/src/context.cpp"
...failed gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o...
...failed updating 1 target... ...updated 13574 targets...
Oh, and I forget to mention another observation: Why does the configuration summary state that Clang 3.8 does not support the "visibility" feature? I think that is just wrong. The configuration summary for Clang 3.8 looks like the following. (Except for the "visibility" feature it is the same for GCC 4.8 and GCC 6.) Performing configuration checks - 32-bit : no - 64-bit : yes - arm : no - mips1 : no - power : no - sparc : no - x86 : yes - symlinks supported : yes - C++11 mutex : yes - lockfree boost::atomic_flag : yes - Boost.Config Feature Check: cxx11_auto_declarations : yes - Boost.Config Feature Check: cxx11_constexpr : yes - Boost.Config Feature Check: cxx11_defaulted_functions : yes - Boost.Config Feature Check: cxx11_final : yes - Boost.Config Feature Check: cxx11_hdr_mutex : yes - Boost.Config Feature Check: cxx11_hdr_tuple : yes - Boost.Config Feature Check: cxx11_lambdas : yes - Boost.Config Feature Check: cxx11_noexcept : yes - Boost.Config Feature Check: cxx11_nullptr : yes - Boost.Config Feature Check: cxx11_rvalue_references : yes - Boost.Config Feature Check: cxx11_template_aliases : yes - Boost.Config Feature Check: cxx11_thread_local : no - Boost.Config Feature Check: cxx11_variadic_templates : yes - has_icu builds : yes warning: Graph library does not contain MPI-based parallel components. note: to enable them, add "using mpi ;" to your user-config.jam - zlib : yes - bzip2 : yes - iconv (libc) : yes - icu : yes - native-atomic-int32-supported : yes - native-syslog-supported : yes - pthread-supports-robust-mutexes : yes - compiler-supports-visibility : no - compiler-supports-ssse3 : yes - compiler-supports-avx2 : yes - gcc visibility : yes - long double support : yes warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. - zlib : yes - bzip2 : yes Component configuration: - atomic : building - chrono : building - container : building - context : building - coroutine : building - coroutine2 : building - date_time : building - exception : building - fiber : building - filesystem : building - graph : building - graph_parallel : building - iostreams : building - locale : building - log : building - math : building - metaparse : building - mpi : building - program_options : building - python : building - random : building - regex : building - serialization : building - signals : building - system : building - test : building - thread : building - timer : building - type_erasure : building - wave : building ...patience...
Am 27.03.2017 um 11:11 schrieb Deniz Bahadir via Boost:
Am 27.03.2017 um 11:03 schrieb Deniz Bahadir via Boost:
Am 23.03.2017 um 15:11 schrieb Rene Rivera via Boost:
Boost release 1.64.0 beta 1 is now available at:
[...]
Please download the beta, give it a try, and report any problems you encounter.
I tried compiling it on an Ubuntu 16.04 (x86_64) machine with the following compilers:
* GCC 4.8 with C++11 (and libstdc++) * GCC 6 with C++14 (and libstdc++) * Clang 3.8 with C++14 and libc++
GCC 6 and Clang 3.8 succeeded, GCC 4.8 failed. The error can be seen at the end of this email.
Additionally, I realized two other problems:
1. Using Boost.Build option "--build-type=complete" does not work (only "-build-type=minimal" works). Before compilation even started it fails like this:
error: Name clash for '
libboost_atomic-gcc48-mt-d-1_64.a'
error: error: Tried to build the target twice, with property sets having error: these incompatible properties: error: error: - <dll-path>/opt/BENOCS/gcc48/bin error: - none error: error: Please make sure to have consistent requirements for these error: properties everywhere in your project, especially for install error: targets.
2. The other problem is not specific to this Boost beta but instead existed from the beginning. When using Boost-Build option "--layout=versioned" the generated libraries' names should contain the compiler-tag and its version. However, this stopped working for GCC since the release of GCC 5. It now misses the compiler's version. I assume it has something to do with GCC changing its version-scheme where the major-version is increased for each new compiler release.
Hope that helps, Deniz Bahadir
PS: The following is the error output when compiling with GCC 4.8:
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/algorithm.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/round_robin.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/shared_work.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/algo/work_stealing.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/barrier.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/condition_variable.o
gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o
libs/fiber/src/context.cpp: In constructor ‘boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)’: libs/fiber/src/context.cpp:230:14: error: call of overloaded ‘callcc(const std::allocator_arg_t&, const boost::context::preallocated&, const default_stack&, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5)’ is ambiguous }); ^ libs/fiber/src/context.cpp:230:14: note: candidates are: In file included from ./boost/fiber/context.hpp:27:0, from libs/fiber/src/context.cpp:7: ./boost/context/continuation.hpp:468:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::preallocated; Fn = const boost::context::basic_fixedsize_stackboost::context::stack_traits&; Arg = {boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}] callcc( std::allocator_arg_t, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:482:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5; Arg = {}] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:513:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn) { ^ ./boost/context/continuation.hpp:456:1: note: boost::context::continuation boost::context::callcc(Fn&&, Arg ...) [with Fn = const std::allocator_arg_t&; Arg = {boost::context::preallocated, boost::context::basic_fixedsize_stackboost::context::stack_traits, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}; <template-parameter-1-3> = void] callcc( Fn && fn, Arg ... arg) { ^
"g++-4.8" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -m64 -m64 -fpic -std=c++11 -m64 -fpic -DBOOST_ALL_NO_LIB=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DNDEBUG -I"." -c -o "/home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o"
"libs/fiber/src/context.cpp"
...failed gcc.compile.c++ /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi/context.o...
...failed updating 1 target... ...updated 13574 targets...
Oh, and I forget to mention another observation: Why does the configuration summary state that Clang 3.8 does not support the "visibility" feature? I think that is just wrong.
The configuration summary for Clang 3.8 looks like the following. (Except for the "visibility" feature it is the same for GCC 4.8 and GCC 6.)
One last correction: GCC seems to support "thread_local" other than Clang 3.8.
Performing configuration checks
- 32-bit : no - 64-bit : yes - arm : no - mips1 : no - power : no - sparc : no - x86 : yes - symlinks supported : yes - C++11 mutex : yes - lockfree boost::atomic_flag : yes - Boost.Config Feature Check: cxx11_auto_declarations : yes - Boost.Config Feature Check: cxx11_constexpr : yes - Boost.Config Feature Check: cxx11_defaulted_functions : yes - Boost.Config Feature Check: cxx11_final : yes - Boost.Config Feature Check: cxx11_hdr_mutex : yes - Boost.Config Feature Check: cxx11_hdr_tuple : yes - Boost.Config Feature Check: cxx11_lambdas : yes - Boost.Config Feature Check: cxx11_noexcept : yes - Boost.Config Feature Check: cxx11_nullptr : yes - Boost.Config Feature Check: cxx11_rvalue_references : yes - Boost.Config Feature Check: cxx11_template_aliases : yes - Boost.Config Feature Check: cxx11_thread_local : no - Boost.Config Feature Check: cxx11_variadic_templates : yes - has_icu builds : yes warning: Graph library does not contain MPI-based parallel components. note: to enable them, add "using mpi ;" to your user-config.jam - zlib : yes - bzip2 : yes - iconv (libc) : yes - icu : yes - native-atomic-int32-supported : yes - native-syslog-supported : yes - pthread-supports-robust-mutexes : yes - compiler-supports-visibility : no - compiler-supports-ssse3 : yes - compiler-supports-avx2 : yes - gcc visibility : yes - long double support : yes warning: skipping optional Message Passing Interface (MPI) library. note: to enable MPI support, add "using mpi ;" to user-config.jam. note: to suppress this message, pass "--without-mpi" to bjam. note: otherwise, you can safely ignore this message. - zlib : yes - bzip2 : yes
Component configuration:
- atomic : building - chrono : building - container : building - context : building - coroutine : building - coroutine2 : building - date_time : building - exception : building - fiber : building - filesystem : building - graph : building - graph_parallel : building - iostreams : building - locale : building - log : building - math : building - metaparse : building - mpi : building - program_options : building - python : building - random : building - regex : building - serialization : building - signals : building - system : building - test : building - thread : building - timer : building - type_erasure : building - wave : building
...patience...
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Oh, and I forget to mention another observation: Why does the configuration summary state that Clang 3.8 does not support the "visibility" feature? I think that is just wrong.
The configuration summary for Clang 3.8 looks like the following. (Except for the "visibility" feature it is the same for GCC 4.8 and GCC 6.)
If you look in bin.v2/config.log you will see the error messages from the failed test - ie the reason it was disabled. HTH, John. --- This email has been checked for viruses by AVG. http://www.avg.com
Am 27.03.2017 um 13:00 schrieb John Maddock via Boost:
Oh, and I forget to mention another observation: Why does the configuration summary state that Clang 3.8 does not support the "visibility" feature? I think that is just wrong.
The configuration summary for Clang 3.8 looks like the following. (Except for the "visibility" feature it is the same for GCC 4.8 and GCC 6.)
If you look in bin.v2/config.log you will see the error messages from the failed test - ie the reason it was disabled.
Thanks, John, that helped. Clang did not like my linker-input, because it was only trying to compile not link: ...updated 5 targets... ...found 6 targets... ...updating 5 targets... common.mkdir /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility common.mkdir /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8 common.mkdir /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8/debug common.mkdir /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8/debug/pch-off clang-linux.compile.c++.without-pth /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8/debug/pch-off/visibility.o clang: error: -lc++abi: 'linker' input unused clang: error: -lc++abi: 'linker' input unused "clang++" -c -x c++ -fvisibility=hidden -m64 -fpic -fdiagnostics-color=always -std=c++14 -stdlib=libc++ -isystem/usr/include/libcxxabi -lc++abi -O0 -Werror -g -m64 -fpic -fdiagnostics-color=always -fno-inline -Wall -pedantic -Werror -g -fPIC -m64 -fvisibility=hidden -m64 -fpic -fdiagnostics-color=always -std=c++14 -stdlib=libc++ -isystem/usr/include/libcxxabi -lc++abi -m64 -fpic -fdiagnostics-color=always -DBOOST_ALL_NO_LIB=1 -I"." -o "/home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8/debug/pch-off/visibility.o" "libs/log/config/visibility/visibility.cpp" ...failed clang-linux.compile.c++.without-pth /home/jenkins/workspace/TEST_Boost_Build@3/clang38/build/boost/boost/bin.v2/libs/log/config/visibility/clang-linux-3.8/debug/pch-off/visibility.o... ...failed updating 1 target... It seems, I should not add a link-flag like "-lc++abi" to Boost.Build option "cxxflags!? Should I only use Boost.Build option "linkflags" or would I additionally have to prepend a "-Wl," to that link-flag? Thanks, Deniz
HTH, John.
It seems, I should not add a link-flag like "-lc++abi" to Boost.Build option "cxxflags!? Should I only use Boost.Build option "linkflags" or would I additionally have to prepend a "-Wl," to that link-flag?
Just use cxxflags= for compilation and linkflags= for linker flags and you should be fine, you will also need to add --reconfigure to the command line to prevent the last cached configure run from being used again. HTH, John. --- This email has been checked for viruses by AVG. http://www.avg.com
Am 27.03.2017 um 18:52 schrieb John Maddock via Boost:
It seems, I should not add a link-flag like "-lc++abi" to Boost.Build option "cxxflags!? Should I only use Boost.Build option "linkflags" or would I additionally have to prepend a "-Wl," to that link-flag?
Just use cxxflags= for compilation and linkflags= for linker flags and you should be fine, you will also need to add --reconfigure to the command line to prevent the last cached configure run from being used again.
The thing with the "--reconfigure" option I do not understand. Is that mandatory, now? I just ran "b2 ..." once to try to build Boost into an empty workspace from an unchanged source, which was just before extracted from the tar.gz. (The result I posted to this mailing-list.) I never called it a second time. So, shouldn't there be no reason to "reconfigure" because I am just "configuring" for the first time!? Thanks for any hints that make me understand what's going on, Deniz
HTH, John.
--- This email has been checked for viruses by AVG. http://www.avg.com
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
2017-03-27 11:03 GMT+02:00 Deniz Bahadir via Boost
PS: The following is the error output when compiling with GCC 4.8:
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8 common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/thr eading-multi/algo gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/algorithm.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/round_robin.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/shared_work.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/work_stealing.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/barrier.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/condition_variable.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/context.o libs/fiber/src/context.cpp: In constructor ‘boost::fibers::context::conte xt(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)’: libs/fiber/src/context.cpp:230:14: error: call of overloaded ‘callcc(const std::allocator_arg_t&, const boost::context::preallocated&, const default_stack&, boost::fibers::context::contex t(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5)’ is ambiguous }); ^ libs/fiber/src/context.cpp:230:14: note: candidates are: In file included from ./boost/fiber/context.hpp:27:0, from libs/fiber/src/context.cpp:7: ./boost/context/continuation.hpp:468:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::preallocated; Fn = const boost::context::basic_fixedsize_stackboost::context::stack_traits&; Arg = {boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}] callcc( std::allocator_arg_t, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:482:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5; Arg = {}] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:513:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn) { ^ ./boost/context/continuation.hpp:456:1: note: boost::context::continuation boost::context::callcc(Fn&&, Arg ...) [with Fn = const std::allocator_arg_t&; Arg = {boost::context::preallocated, boost::context::basic_fixedsize_stackboost::context::stack_traits, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}; <template-parameter-1-3> = void] callcc( Fn && fn, Arg ... arg) { ^
"g++-4.8" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -m64 -m64 -fpic -std=c++11 -m64 -fpic -DBOOST_ALL_NO_LIB=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DNDEBUG -I"." -c -o "/home/jenkins/workspace/TEST_ Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/ gcc-4.8/release/link-static/threading-multi/context.o" "libs/fiber/src/context.cpp"
...failed gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/context.o... ...failed updating 1 target... ...updated 13574 targets...
did you run b2 with option --reconfigure? otherwise you use the cached values of the feature check
Am 27.03.2017 um 12:39 schrieb Oliver Kowalke via Boost:
2017-03-27 11:03 GMT+02:00 Deniz Bahadir via Boost
: PS: The following is the error output when compiling with GCC 4.8:
common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8 common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/threading-multi common.mkdir /home/jenkins/workspace/TEST_Boost_Build/gcc48/build/boost/b oost/bin.v2/libs/fiber/build/gcc-4.8/release/link-static/thr eading-multi/algo gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/algorithm.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/round_robin.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/shared_work.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/algo/work_stealing.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/barrier.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/condition_variable.o gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/context.o libs/fiber/src/context.cpp: In constructor ‘boost::fibers::context::conte xt(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)’: libs/fiber/src/context.cpp:230:14: error: call of overloaded ‘callcc(const std::allocator_arg_t&, const boost::context::preallocated&, const default_stack&, boost::fibers::context::contex t(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5)’ is ambiguous }); ^ libs/fiber/src/context.cpp:230:14: note: candidates are: In file included from ./boost/fiber/context.hpp:27:0, from libs/fiber/src/context.cpp:7: ./boost/context/continuation.hpp:468:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::preallocated; Fn = const boost::context::basic_fixedsize_stackboost::context::stack_traits&; Arg = {boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}] callcc( std::allocator_arg_t, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:482:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&, Arg ...) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5; Arg = {}] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn, Arg ... arg) { ^ ./boost/context/continuation.hpp:513:1: note: boost::context::continuation boost::context::callcc(std::allocator_arg_t, boost::context::preallocated, StackAlloc, Fn&&) [with StackAlloc = boost::context::basic_fixedsize_stackboost::context::stack_traits; Fn = boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5] callcc( std::allocator_arg_t, preallocated palloc, StackAlloc salloc, Fn && fn) { ^ ./boost/context/continuation.hpp:456:1: note: boost::context::continuation boost::context::callcc(Fn&&, Arg ...) [with Fn = const std::allocator_arg_t&; Arg = {boost::context::preallocated, boost::context::basic_fixedsize_stackboost::context::stack_traits, boost::fibers::context::context(boost::fibers::dispatcher_context_t, const boost::context::preallocated&, const default_stack&, boost::fibers::scheduler*)::__lambda5}; <template-parameter-1-3> = void] callcc( Fn && fn, Arg ... arg) { ^
"g++-4.8" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -m64 -m64 -fpic -std=c++11 -m64 -fpic -DBOOST_ALL_NO_LIB=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DNDEBUG -I"." -c -o "/home/jenkins/workspace/TEST_ Boost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/ gcc-4.8/release/link-static/threading-multi/context.o" "libs/fiber/src/context.cpp"
...failed gcc.compile.c++ /home/jenkins/workspace/TEST_B oost_Build/gcc48/build/boost/boost/bin.v2/libs/fiber/build/g cc-4.8/release/link-static/threading-multi/context.o... ...failed updating 1 target... ...updated 13574 targets...
did you run b2 with option --reconfigure? otherwise you use the cached values of the feature check
No I did not. However, I used an entirely new / empty working-directory for each compiler, so I did not see any reason in useing an option like "--reconfigure". (Earlier version-releases of Boost compiled fine without this option.)
-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Oliver Kowalke via Boost Sent: 27 March 2017 11:39 To: boost Cc: Oliver Kowalke Subject: Re: [boost] [release] Boost 1.64.0 Beta 1
2017-03-27 11:03 GMT+02:00 Deniz Bahadir via Boost
: did you run b2 with option --reconfigure? otherwise you use the cached values of the feature check
You probably also need to delete the cached values " Eventually, after some loss of hair and nearing monitorial defenestration, I realised that to get a completely clean build after changing the compiler features installed, usually from an update, using –a –clean –reconfigure do not suffice. One must also remove the several cached versions of vcvarsall.bat at C:\Users\The_User\AppData\Local\Temp " You can delete these at any time and they will be recreated automatically. Proof of generating a clean copy of these files look something like this: I:\modular-boost\libs\hello_boost\example>b2 -a toolset=msvc-14.0 CRT_IncludePath_x64 = C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt using msvc ...found 1 target... ...updating 1 target... msvc.write-setup-script C:\Users\paula\AppData\Local\Temp\b2_msvc_14.0_vcvarsall_x86.cmd ...updated 1 target... ...found 1 target... ...updating 1 target... msvc.write-setup-script C:\Users\paula\AppData\Local\Temp\b2_msvc_14.0_vcvarsall_amd64.cmd ...updated 1 target... ...found 1 target... ...updating 1 target... msvc.write-setup-script C:\Users\paula\AppData\Local\Temp\b2_msvc_14.0_vcvarsall_x86_arm.cmd ...updated 1 target... If you do not have a clean copy, the 'cached' version of vsvarsall.bat will be used, with undesirable results. HTH Paul --- Paul A. Bristow Prizet Farmhouse Kendal UK LA8 8AB +44 (0) 1539 561830
participants (11)
-
Adam Majer
-
Deniz Bahadir
-
John Maddock
-
Jürgen Hunold
-
Mateusz Loskot
-
Olaf van der Spek
-
Oliver Kowalke
-
Paul A. Bristow
-
Paul Fee
-
Rene Rivera
-
Tom Kent