* compile with -fPIC