17 Writing Extensions for gawk

It is possible to add new functions written in C or C++ to gawk using dynamically loaded libraries. This facility is available on systems that support the C dlopen() and dlsym() functions. This chapter describes how to create extensions using code written in C or C++.

If you don’t know anything about C programming, you can safely skip this chapter, although you may wish to review the documentation on the extensions that come with gawk (see section The Sample Extensions in the gawk Distribution), and the information on the gawkextlib project (see section The gawkextlib Project). The sample extensions are automatically built and installed when gawk is.

NOTE: When --sandbox is specified, extensions are disabled

(see section Command-Line Options).

Extension Intro    What is an extension.
Plugin License    A note about licensing.
Extension Mechanism Outline    An outline of how it works.
Extension API Description    A full description of the API.
Finding Extensions    How gawk finds compiled extensions.
Extension Example    Example C code for an extension.
Extension Samples    The sample extensions that ship with

gawk.

gawkextlib    The gawkextlib project.
Extension summary    Extension summary.
Extension Exercises    Exercises.