# ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader - perldoc - [phpMan]

## NAME
    [ExtUtils::Mkbootstrap](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3AMkbootstrap/markdown) - make a bootstrap file for use by DynaLoader

## SYNOPSIS
      Mkbootstrap

## DESCRIPTION
    Mkbootstrap typically gets called from an extension Makefile.

    There is no "*.bs" file supplied with the extension. Instead, there may be a *_BS file which has
    code for the special cases, like posix for berkeley db on the NeXT.

    This file will get parsed, and produce a maybe empty @[DynaLoader::dl_resolve_using](https://www.chedong.com/phpMan.php/perldoc/DynaLoader%3A%3Adlresolveusing/markdown) array for the
    current architecture. That will be extended by $BSLOADLIBS, which was computed by
    [ExtUtils::Liblist::ext](https://www.chedong.com/phpMan.php/perldoc/ExtUtils%3A%3ALiblist%3A%3Aext/markdown)(). If this array still is empty, we do nothing, else we write a .bs file
    with an @[DynaLoader::dl_resolve_using](https://www.chedong.com/phpMan.php/perldoc/DynaLoader%3A%3Adlresolveusing/markdown) array.

    The *_BS file can put some code into the generated "*.bs" file by placing it in $bscode. This is
    a handy 'escape' mechanism that may prove useful in complex situations.

    If @[DynaLoader::dl_resolve_using](https://www.chedong.com/phpMan.php/perldoc/DynaLoader%3A%3Adlresolveusing/markdown) contains "-L*" or "-l*" entries then Mkbootstrap will
    automatically add a dl_findfile() call to the generated "*.bs" file.

