On Sat, Mar 11, 2017 at 9:43 PM, Tom Kent
On Fri, Mar 10, 2017 at 7:43 PM, Andrey Semashev via Boost < boost@lists.boost.org> wrote:
Am 11.03.2017 um 00:22 schrieb Andrey Semashev via Boost:
/usr/include/c++/v1/string:1938:44: error: 'basic_string<_CharT, _Traits, _Allocator>' is missing exception specification 'noexcept' basic_string<_CharT, _Traits, _Allocator>::basic_string(const allocator_type& __a) ^ /usr/include/c++/v1/string:1326:40: note: previous declaration is here _LIBCPP_INLINE_VISIBILITY explicit basic_string(const
allocator_type&
__a)
This happens after boost/config.hpp is included, which means that cstddef is found. Indeed, cstddef is in /usr/include/c++/v1 on my system, so the compiler clearly looks there.
The error itself looks like a bug in libc++.
This is a known error on Ubuntu/Debian: https://bugs.launchpad.net/ubuntu/+source/libc++/+bug/1610168
And the fix is simple, presuming one can modify header-files of the
On Sat, Mar 11, 2017 at 3:32 AM, Deniz Bahadir via Boost
wrote: libc++ installation: http://stackoverflow.com/a/38385967
I guess, one could make a local change like that, but modifying system headers is generally a bad idea and can't be recommended. I mean, even if Tom makes the change on the test machine, that doesn't make Boost actually work on users' machines. Which means libc++ can not be officially supported.
/usr/include/c++/v1/cxxabi.h:21:10: fatal error: '__cxxabi_config.h' file not found #include <__cxxabi_config.h>
This error is more interesting. I can see this #include in my local libc++ as well, yet I can't find this file on my system.
On my Ubuntu machine I was able to fix this error by adding the following path to the include-search-path: /usr/include/libcxxabi
If you do not have this path on your Ubuntu/Debian machine, you need to install libc++abi, too. (DEB-Package: libc++abi-dev)
Right, which makes it a packaging bug, because the package should have been pulled as a dependency of libc++-dev.
Hope that helps,
It does, thanks.
Installing the baseline ubuntu libc++abi-dev *and* adding `-I/usr/include/libcxxabi` to my user-config.jam file got rid of the file not found #include <__cxxabi_config.h> Once I get a chance to make a decent solution, I'm going to put a fix in my docker image for the `/usr/include/c++/v1/string:1938:44: error: 'basic_string<...` issue.
Seems to have worked out now. I've got the fix into my docker builds, and the libc++ runners are cycling. See teeks99-02-dc3.0-1z-lc and teeks99-02-mc3.9-1z-lc for develop and master tests. Tom