modified to enable complie library of linux