Мне нужно использовать сопоставление регулярных выражений в моей программе. Я решил использовать для этого библиотеку boost, но при попытке компиляции получаю странный сбой. Что случилось??
Вот мой код:
...
#include <boost/regex.hpp>
...
using namespace boost;
...
map <string, double>::iterator container::find (string toFind)
{
iterator it;
for (it=mainMap.begin(); it!=mainMap.end(); it++)
{
regex e ((*it).first); //this line works correct
if ( regex_match (toFind, e ) )
return it;
}
return it;
}
...
Сообщение об ошибке слишком большое для публикации, его начало:
TMP / cczkfDcy.o (.gnu.linkonce.t._ZN5boost11basic_regexIcNS_12regex_traitsIcEESaIcEED1Ev + 0x11):
В функции boost::basic_regex<char, boost::regex_traits<char>,
std::allocator<char> >::~basic_regex()': : undefined reference to
boost :: reg_expression,
std :: allocator> :: ~ reg_expression () '...