add share_library.hpp
share_library wrapper for multi-platform