Chapter 15. Packages and Extensions
PHP is a high-level language that uses dynamic typing and memory management to make software development easier for end users. Unfortunately, computers are not very good at handling high-level concepts, so any high-level system must itself be built atop lower-level building blocks. In the case of PHP, the entire system is written in and built atop C.
Since PHP is open source, you can download the entire source code for the language directly from GitHub. Then you can build the language from source on your own system, make changes to it, or write your own native (C-level) extensions.
In any environment, you’ll need various other packages available in order to build PHP from source. On Ubuntu Linux, these are the packages:
pkg-config-
A Linux package for returning information about installed libraries
build-essential-
A meta-package encompassing the GNU debugger, g++ compiler, and other tools for working with C/C++ projects
autoconf-
Package of macros to produce shell scripts that configure code packages
bison-
A general-purpose parser generator
re2c-
A regular expression compiler and open source lexer for C and C++
libxml2-dev-
The C-level development headers required for XML processing
libsqlite3-dev-
The C-level development headers for SQLite and related bindings
You can install all of them with the following apt command:
$ sudo apt install -y pkg-config build-essential autoconf bison re2c \
libxml2-dev libsqlite3-dev
Once dependencies ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access