Hi!
When I try to use the parse_config_file() function from the program_options library I get a link error saying (built on OS X 10.5):
Undefined symbols:
"boost::program_options::basic_parsed_options<char> boost::program_options::parse_config_file<char>(std::basic_istream<char, std::char_traits<char> >&, boost::program_options::options_description const&, bool)", referenced from:
_main in main.cc.o
ld: symbol(s) not found
Taking a closer look at the code I discovered that the function is declared as a template in boost/program_options/parsers.hpp but is defined in boost/libs/program_options/src/parsers.cpp.
Is this really valid? I've thought that templated functions need to be defined along with the declaration as the template arguments need to be evaluated at compile time.
Or am I missing something?
Thanks in advance!
Arthur