error linking debug version boost_regex with Solaris compiler
I compiled boost_regex lib on Solaris using the following compiler:
CC -V CC: Sun WorkShop 6 update 2 C++ 5.3 2001/05/15
make -f sunpro_dbx.mak mkdir -p r mkdir -p rm rm -f *.o rm -fr SunWS_cache CC -I../../../../ -I./ -L../../build/sunpro_dbx -g -o r/regress tests.cpp parse.cpp regress.cpp -lboost_regex tests.cpp:
The version without using -g links fine, however, when I compiled the lib with -g option using provided makefile sunpro_dbx.mk, the lib was built OK; then I tried to compile provided test programs using libs/regex/test/regress/sunpro_dbx.mk, I got the following error: parse.cpp: regress.cpp: Undefined first referenced symbol in file boost::detail::allocator<unsigned char>::allocator<char>#Nvariant 1 (const boost::detail::allocator<__type_1>&) /fsys/home/zhangku/re/libs/regex/ test/regress/SunWS_cache/CC_obj_O/OhCenAP7d5aN-_Bfr3wh.o boost::detail::allocator<unsigned char>::allocator<wchar_t>#Nvariant 1 (const boost::detail::allocator<__type_1>&) ../../build/sunpro_dbx/libboost_r egex.so ld: fatal: Symbol referencing errors. No output written to r/regress make: *** [r/regress] Error 1 Can anyone help me on this? Kurt
Can anyone help me on this?
Probably you need a sunpro expert here: the missing functions are definitely in the lib (as inline functions), my guess is that out-of-line expansions aren't being generated for some reason, what happens if you define BOOST_REGEX_NO_EXTERNAL_TEMPLATES throughout - does this fix the issue? John Maddock http://ourworld.compuserve.com/homepages/john_maddock/index.htm
participants (2)
-
John Maddock
-
kurt_zhang