|
Boost Users : |
From: Brad Smith (brad_at_[hidden])
Date: 2021-05-28 16:41:00
Hi,
I am trying to upgrade from Boost 1.73 to Boost 1.76 and down to only
one consumer left that will
not build. This appears to be an issue with Boost::regex.
I noticed this in the Boost 1.76 release notes..
"Regex is now header only except in C++03 mode."
Clang defaults to C++14, but I noticed BOOST_REGEX_CXX03 is defined. The
project does not
specify a particular C++ version so it should be using C++14.
The functions below exist in the Boost 1.73 Boost::regex library but not
in the 1.76
library.
The project in question uses the function regex_match().
Any hints as to how to resolve this?
ld: error: undefined symbol:
boost::scoped_static_mutex_lock::scoped_static_mutex_lock(boost::static_mutex&,
bool)
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::object_cache<boost::re_detail_500::cpp_regex_traits_base<char>,
boost::re_detail_500::cpp_regex_traits_implementation<char>
>::get(boost::re_detail_500::cpp_regex_traits_base<char> const&,
unsigned long))
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::cpp_regex_traits<char>::get_catalog_name())
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::re_detail_500::save_state_init::~save_state_init())
>>> referenced 2 more times
ld: error: undefined symbol:
boost::scoped_static_mutex_lock::~scoped_static_mutex_lock()
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::object_cache<boost::re_detail_500::cpp_regex_traits_base<char>,
boost::re_detail_500::cpp_regex_traits_implementation<char>
>::get(boost::re_detail_500::cpp_regex_traits_base<char> const&,
unsigned long))
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::object_cache<boost::re_detail_500::cpp_regex_traits_base<char>,
boost::re_detail_500::cpp_regex_traits_implementation<char>
>::get(boost::re_detail_500::cpp_regex_traits_base<char> const&,
unsigned long))
>>> referenced by Config.cpp
>>>Â Â Â Â Â Â Â Â Â Â Â Â Â Â
Config.o:(boost::cpp_regex_traits<char>::get_catalog_name())
>>> referenced 5 more times
c++: error: linker command failed with exit code 1 (use -v to see
invocation)
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net