# man > ExtUtils::Miniperl

## NAME
    [ExtUtils::Miniperl](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3AMiniperl/markdown) - write the C code for miniperlmain.c and perlmain.c

## SYNOPSIS
        use [ExtUtils::Miniperl](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3AMiniperl/markdown);
        writemain(@directories);
        # or
        writemain($fh, @directories);
        # or
        writemain(\$filename, @directories);

## DESCRIPTION
### writemain
    relate to perl modules and should be linked into a new perl binary. It writes a corresponding
    miniperlmain.c or perlmain.c file that is a plain C file containing all the bootstrap code to
    make the modules associated with the libraries available from within perl. If the first argument
    to writemain() is a reference to a scalar it is used as the filename to open for output. Any
    other reference is used as the filehandle to write to. Otherwise output defaults to "STDOUT".

    The typical usage is from within perl's own Makefile (to build perlmain.c) or from
    regen/miniperlmain.pl (to build miniperlmain.c). So under normal circumstances you won't have to
    deal with this module directly.

## SEE ALSO
    [ExtUtils::MakeMaker](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3AMakeMaker/markdown)

