If you are using v3 from boost::filesystem , you can use the canonical function to get the path with all allowed symbolic links. This may work to resolve the path of your symbolic link.
For example, if sym.link is a symbolic link:
boost::filesystem::path resolved = boost::filesystem::canonical( 'sym.link' );
I didn't really try this, so I could be wrong, but it seems to make sense.
Alternatively, you might be lucky with read_symlink
obmarg
source share