support cross compiling