add lib
update build function