I'm using dir_monitor in a project and suddenly started getting linking errors once the project got bigger and the dir_monitor headers included in multiple places.
The main culprit was that helper::throw_system_error_if and helper::to_utf8 were getting defined multiple times.
Setting the two functions as inline seems to take care of this.