compiling lib