I am using Boost program_options library. I can successfully compile my code under "Release" mode in Xcode, but under "Debug" mode there are some issues with linking. The compiler says it can't find vtables for some of the program_options stuff (see error messages pasted below).
"boost::program_options::validate(boost::any&, __gnu_debug_def::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool*, int)", referenced from:
boost::program_options::typed_value<bool, char>::xparse(boost::any&, __gnu_debug_def::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) constin ArnoldiVsPower.o
"boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, __gnu_debug_def::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool) const", referenced from:
vtable for boost::program_options::typed_value<bool, char>in ArnoldiVsPower.o
vtable for boost::program_options::typed_value<unsigned long, char>in ArnoldiVsPower.o
vtable for boost::program_options::typed_value<double, char>in ArnoldiVsPower.o
vtable for boost::program_options::typed_value<int, char>in ArnoldiVsPower.o
"boost::program_options::detail::cmdline::cmdline(__gnu_debug_def::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)", referenced from:
boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char**)in ArnoldiVsPower.o
ld: symbol(s) not found
collect2: ld returned 1 exit status