fix a bug in build_compilers, and get_parser