Если вы в отчаянии, и вы все еще используете устаревший драйвер MongoDB с истекшим сроком эксплуатации (чего не следует делать!) И не можете обновить весь свой код в это время (что вам, в конечном итоге, придется!), И вам нужно быстрое исправление, затем вы можете вставить следующий код (взятый из Boost 1.53.0 ) в time_support.cpp
:
namespace boost {
namespace date_time {
namespace winapi {
/*!
* The function converts file_time into number of microseconds elapsed since 1970-Jan-01
*
* \note Only dates after 1970-Jan-01 are supported. Dates before will be wrapped.
*
* \note The function is templated on the FILETIME type, so that
* it can be used with both native FILETIME and the ad-hoc
* boost::date_time::winapi::file_time type.
*/
template< typename FileTimeT >
inline boost::uint64_t file_time_to_microseconds(FileTimeT const& ft)
{
/* shift is difference between 1970-Jan-01 & 1601-Jan-01
* in 100-nanosecond intervals */
const uint64_t shift = 116444736000000000ULL; // (27111902 << 32) + 3577643008
union {
FileTimeT as_file_time;
uint64_t as_integer; // 100-nanos since 1601-Jan-01
} caster;
caster.as_file_time = ft;
caster.as_integer -= shift; // filetime is now 100-nanos since 1970-Jan-01
return (caster.as_integer / 10); // truncate to microseconds
}
}
}
}
Это определит отсутствующую функцию.