make library compile with vc11
support shared library