---
name: "ExtUtils::Mkbootstrap"
section: "3pm"
platform: "linux"
package: "perl-5.004-doc"
version: "5.004.05-6"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ExtUtils::Mkbootstrap/3pm"
---

# ExtUtils::Mkbootstrap(3pm)

make a bootstrap file for use by DynaLoader

## NAME

ExtUtils::Mkbootstrap - 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 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` array for the current architecture. That will be extended by `$BSLOADLIBS`, which was computed by *ExtUtils::Liblist::ext()*. If this array still is empty, we do nothing, else we write a .bs file with an `@DynaLoader::dl_resolve_using` 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` contains `-L*` or `-l*` entries then Mkbootstrap will automatically add a *dl\_findfile()* call to the generated `*.bs` file.
