Libraries Needed to Build on Windows

Libraries are available for download at . The sources prepared to be built for PHP are available under


Library name Project Bundled 5.3 5.4 5.5 master V9 V11
bindlib No Needed only for PHP <= 5.2 or some specific extensions N/A N/A
pcre ext/pcre/pcrelib Yes 8.32 8.32 8.34 8.34 Yes Yes
zlib No 1.2.7 1.2.7 Yes Yes
libiconv No 1.14 1.14 1.14 1.14 Yes Yes
libxml2 No 2.7.8 2.7.8 2.9.1 2.9.1 Yes Yes
ICU No 49.1.2 49.1.2 51.2 53.1 Yes Yes


SAPI's are reliant on third party libraries to link against, and since client and server compiler versions should match, these are not distributed by PHP (we are not in the server business)

SAPI server version released V9 V11
aolserver N/A N/A N/A N/A
apache (1.x) 1.3.41 2008-01-19 N/A N/A
apache_hooks (1.x) N/A N/A
apache2handler Yes N/A
apache2filter Yes N/A
apache2-2handler Yes N/A
apache2-2filter Yes N/A
apache2-4handler Yes Yes
apache2-4filter Yes Yes
clibundledN/AN/A Yes Yes
fastcgi/cgibundledN/AN/A Yes Yes
embedbundledN/AN/A Yes Yes
isapiIIS - in Microsoft SDKN/AN/A Yes N/A
nsapi Yes N/A
pi3web Yes N/A

Aolserver does not provide binaries, and so is not currently being built for PHP

Libraries for the core extensions

Libraries are available for download at

Library name Project Bundled 5.3 5.4 5.5 master VC9 VC11
bzip2 No 1.0.6 1.0.6 1.0.6 1.0.6 Yes Yes
libcurl No 7.36.0 7.36.0 7.36.0 7.36.0 Yes Yes
libssh2 No 1.4.2 1.4.2 1.4.2 1.4.2 Yes Yes
Berkley DB No not supplied since 5.3 N/A N/A
glib No N/A N/A 2.34.3 2.34.3 Yes Yes
qdbm No not supplied since 5.3 N/A N/A
libJPEG No 8d 8d 9 9 Yes Yes
libPNG No 1.2.50 1.2.50 1.5.13 1.5.13 Yes Yes
Freetype No 2.4.3 2.4.10 2.4.10 2.4.10 Yes Yes
libxpm No 3.5.7 3.5.7 3.5.7 3.5.7 Yes Yes
libintl No N/A 0.17 0.17 0.17 Yes Yes
libgmp No see MPIR
mpir No 1.3.1 2.5.1 2.6.0 2.6.0 Yes Yes
libpq No 8.3.6 8.3.6 9.2.2 9.2.2 Yes Yes
cclient No 2007e 2007e 2007f 2007f Yes Yes
ibase No replaced by firebird N/A N/A
fbclient No 2.5.0 2.5.0 2.5.0 2.5.0 Yes N/A
ldap No 2004 2.3.42 2.3.42 2.3.42 Yes Yes
libmcrypt No 2.5.8 2.5.8 2.5.8 2.5.8 Yes Yes
freetds No used in PHP <= 5.2 only Yes N/A
ming No 0.3beta1 N/A N/A N/A Yes N/A
mysqlnd Yes 5.1.4 5.1.4 5.1.4 5.1.4 Yes N/A
libmysql No 5.0.51a N/A N/A N/A Yes N/A
Openssl No 0.9.8x 0.9.8x 1.0.1e 1.0.1e Yes Yes
aspell No replaced by ext/enchant N/A N/A
ucd-snmp No 4.2.3 4.2.3 5.7.2 5.7.2 Yes Yes
tidy No 2007/08/15 2009/03/25 2009/03/25 2009/03/25 Yes Yes
libxslt No 1.1.27 1.1.27 1.1.27 1.1.27 Yes Yes
libmhash No replaced by ext/hash in PHP >= 5.3 N/A N/A
odbc32.lib No N/A N/A N/A N/A Yes Yes
oleaut32.lib No N/A N/A N/A N/A Yes Yes
libbcmath N/A Yes N/A N/A N/A N/A N/A N/A
libinifile N/A Yes N/A N/A N/A N/A N/A N/A
libflatfile N/A Yes N/A N/A N/A N/A N/A N/A
libcdb N/A Yes N/A N/A N/A N/A N/A N/A
regex N/A Yes N/A N/A N/A N/A N/A N/A
oniguruma Yes 4.4.4 4.7.1 5.9.2 5.9.2 Yes Yes
libmbfl N/A Yes 1.1.0 1.1.0 1.1.0 1.1.0 Yes N/A
libxmlrpc N/A Yes N/A N/A N/A N/A N/A N/A
sqlite2 Yes 2.8.17 2.8.17 2.8.17 2.8.17 Yes Yes
sqlite3 Yes Yes Yes
tmezonedb Yes N/A N/A N/A N/A Yes Yes
libvpx No N/A N/A 1.1.0 1.1.0 Yes Yes
libsasl No N/A N/A 2.1.25 2.1.25 Yes Yes
enchant No N/A N/A 1.6.0 1.6.0 Yes Yes

Libraries used by our windows ports of the different libraries (not when building only php)

Libraries are available for download at

Library name Project Bundled 5.3 5.4 5.5 master VC9 VC11
dirent No 20080629 20080629 20080629 20080629 Yes Yes

Third Party Libraries

Third party libraries are not available in our repositories. The reason are the miscellaneous restricted licenses and non open sources code. However, we are authorized to distribute them with our PHP releases but not their SDK.

Library dependencies

Extensions and their libraries

Extension Library name Project Bundled
bcmath libbcmath Yes
bz2 bzip2 No
com_donet oleaut32.lib No
curl libcurl No
date timezonedb Yes
dba Berkley DB No
qdbm No
libinifile Yes
libflatfile Yes
libcdb Yes
ereg regex N/A Yes
gd libJPEG No
libPNG No
Freetype No
libxpm No
libvpx No
gettext libintl No
gmp libgmp or mpir No
ibm_db2 ibm_db2 Yes
imap cclient No
interbase ibase No
intl icu No
pdo_firebird fbclient No
ldap ldap No
libsasl No
mbstring oniguruma Yes
libmbfl N/A Yes
mcrypt libmcrypt No
mhash libmhash No
ming ming No
mssql freetds No
pdo_mysql mysqlnd Yes
libmysql No
mysqli mysqlnd Yes
libmysql No
mysql mysqlnd Yes
libmysql No
oci8 oci8 Yes
pdo_odbc odbc32.lib No
odbc odbc32.lib No
openssl Openssl No
pdo_sqlite sqlite Yes
sqlite sqlite Yes
pgsql/pdo_pgsql libpg No
pgsql libpg No
pspell aspell No
snmp ucd-snmp No
tidy tidy No
xmlrpc libxmlrpc Yes
xsl libxslt No

Extensions using mandatory libs

  • dom
  • iconv
  • libxml
  • pcre
  • simplexml
  • soap
  • xml
  • xmlreader
  • xmlwriter
  • zlib
  • zip

Extensions not needing libraries

  • calendar
  • ctype
  • dbase
  • filter
  • ftp
  • json
  • mime-magic (does require file set in ini)
  • pcntl (currently not available on windows)
  • pdo (core)
  • phar (although it does depend on other extensions)
  • posix (never available on windows)
  • recode (library not available on windows)
  • readline (library not available on Windows)
  • session
  • shmop
  • skeleton
  • sockets
  • spl
  • standard
  • sybase (old old not available on windows)
  • sysvmsg (currently not available on windows)
  • sysvsem (currently not available on windows)
  • sysvshm (currently not available on windows)
  • tokenizer
  • wddx

PECL Extensions

General Compiling Guidelines

Any makefiles, project files, source, .rc files - basically anything used to compile a library for PHP should be bundled into a source distribution.

dlls should have a .rc file with a minimum of the version and compiler used

Because windows doesn't differentiate between static libs and dll stub libs (both end in .lib) use a _a suffix for a static lib (libxml2_a.lib)

Any debug version of a library or dll should have a _debug suffix

as of PHP 7.0.0
as of PHP 8.0.0
internals/windows/libs.txt · Last modified: 2021/12/14 12:19 by cmb