У меня была такая же проблема с Boost 1.49. Текущая документация не упоминает
basic_parsed_options<charT>
parse_config_file(const char* filename, const options_description&,
bool allow_unregistered = false);
версия больше (http://www.boost.org/doc/libs/1_54_0/doc/html/boost/program_options/parse_config_f_idp87054352.html). Я решил эту проблему с помощью std :: ifstream вот так
po::variables_map options;
po::options_description desc;
desc.add_options()
("max_processing_time", po::value<double>()->required(), "Maximum processing time")
("min_processing_time", po::value<double>()->required(), "Minimum processing time")
("relative_range_of_due_dates", po::value<double>()->required(), "RDD Relative Range of Due Dates")
("tardiness_factor", po::value<double>()->required(), "TF Tardines Factor")
("number_of_jobs", po::value<unsigned int>()->required(), "Number of jobs");
std::ifstream file(filename.c_str());
po::store(po::parse_config_file(file, desc), options);
file.close();
po::notify(options);
После этого вы можете получить доступ к значениям с помощью
max_processing_time_ = options["max_processing_time"].as<double>();
min_processing_time_ = options["min_processing_time"].as<double>();
relative_range_of_due_dates_ = options["relative_range_of_due_dates"].as<double>();
tardiness_factor_ = options["tardiness_factor"].as<double>();
number_of_jobs_ = options["number_of_jobs"].as<unsigned int>();