Problems when linking to regex library.
In my program, I used regex library. When I build the program to the release version, everything is ok. But when I build the debug version, some link error occurs: --------------------------------------------------------------- error LNK2001: unresolved external symbol "void * __cdecl boost::re_detail::get_mem_block(void)" (?get_mem_block@re_detail@boost@@YAPAXXZ) error LNK2001: unresolved external symbol "void __cdecl boost::re_detail::put_mem_block(void *)" (?put_mem_block@re_detail@boost@@YAXPAX@Z) --------------------------------------------------------------- the tools I use: VC6 + sp5 boost_1_31_0 the regex build process: nmake -fvc6.mak nmake -fvc6.mak install Why the link error occurs? How can I fix it? --
In my program, I used regex library. When I build the program to the release version, everything is ok. But when I build the debug version, some link error occurs:
--------------------------------------------------------------- error LNK2001: unresolved external symbol "void * __cdecl boost::re_detail::get_mem_block(void)" (?get_mem_block@re_detail@boost@@YAPAXXZ) error LNK2001: unresolved external symbol "void __cdecl boost::re_detail::put_mem_block(void *)" (?put_mem_block@re_detail@boost@@YAXPAX@Z) ---------------------------------------------------------------
Those symbols are only defined (and only used) when BOOST_REGEX_NON_RECURSIVE is defined, so I'm assuming that you defined that symbol for your application's debug build, but didn't do so when building the library. John.
the tools I use: VC6 + sp5 boost_1_31_0
the regex build process: nmake -fvc6.mak nmake -fvc6.mak install
Why the link error occurs? How can I fix it?
--
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
Those symbols are only defined (and only used) when BOOST_REGEX_NON_RECURSIVE is defined, so I'm assuming that you defined
Thanks for the clue you provide. My project linked the stlport library somedays ago. So STLP_DEBUG is defined. When I remove the stlport library from my project. I forget removing the symbol. :-( Undefine it, everything is ok. Thanks. -- that
symbol for your application's debug build, but didn't do so when building the library.
John.
participants (2)
-
Guan Bin
-
John Maddock