---
name: "ExtUtils::Mkbootstrap"
section: "3perl"
platform: "linux"
package: "perl"
version: "5.44.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/ExtUtils::Mkbootstrap/3perl"
---

# ExtUtils::Mkbootstrap(3perl)

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, 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` 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.
