change interface
change compile option for dependency