add communicate common interface and shared so lib generate makefile