internals:windows:stepbystepbuild_sdk_2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
internals:windows:stepbystepbuild_sdk_2 [2021/02/08 07:24] – kalle | internals:windows:stepbystepbuild_sdk_2 [2024/11/19 14:27] (current) – mention php-windows-builder for GH action builds cmb | ||
---|---|---|---|
Line 18: | Line 18: | ||
* Visual C++ 14.0 (Visual Studio 2015) for **PHP 7.0** or **PHP 7.1**. | * Visual C++ 14.0 (Visual Studio 2015) for **PHP 7.0** or **PHP 7.1**. | ||
* Visual C++ 15.0 (Visual Studio 2017) for **PHP 7.2**, **PHP 7.3** or **PHP 7.4**. | * Visual C++ 15.0 (Visual Studio 2017) for **PHP 7.2**, **PHP 7.3** or **PHP 7.4**. | ||
- | * Visual C++ 16.0 (Visual Studio 2019) for **master**. | + | * Visual C++ 16.0 (Visual Studio 2019) for **PHP 8.0**, **PHP 8.1**, **PHP 8.2** or **PHP 8.3**. |
+ | * Visual C++ 17.0 (Visual Studio 2022) for **PHP 8.4**. | ||
+ | |||
+ | Always keep your installed Visual C++ up to date. Otherwise build errors may occur due to dependencies built with newer versions. | ||
Support for a certain Visual Studio version means only support for its default platform toolset; building PHP with a non-default platform toolset (such as 14.16 with Visual Studio 2019) may work, but is not recommended. | Support for a certain Visual Studio version means only support for its default platform toolset; building PHP with a non-default platform toolset (such as 14.16 with Visual Studio 2019) may work, but is not recommended. | ||
Line 26: | Line 29: | ||
==== Setup ==== | ==== Setup ==== | ||
- | * Fetch the latest stable SDK tag from https:// | + | * Fetch the latest stable SDK tag or HEAD from https:// |
* The new PHP SDK is required, when building PHP 7.2+ | * The new PHP SDK is required, when building PHP 7.2+ | ||
* Read the PHP SDK specific notes on the Github repository page | * Read the PHP SDK specific notes on the Github repository page | ||
Line 66: | Line 69: | ||
* clone the [[http:// | * clone the [[http:// | ||
- Get the binary tools: | - Get the binary tools: | ||
- | * available from [[https:// | + | * available from [[https:// |
* either fetch a tag as zip, or clone the git repository and checkout the tag | * either fetch a tag as zip, or clone the git repository and checkout the tag | ||
- Get the libraries on which PHP depends: | - Get the libraries on which PHP depends: | ||
Line 135: | Line 138: | ||
At this point, your compiled extension will be located in the release directory. | At this point, your compiled extension will be located in the release directory. | ||
+ | |||
+ | ==== Building PECL extensions with phpize ==== | ||
+ | |||
+ | Alternatively to the " | ||
+ | |||
+ | - Download and unpack the development package which corresponds to your pre-built PHP version and variant from https:// | ||
+ | - Download and unpack the source of the PECL extension | ||
+ | - Invoke the starter script to automatically setup the environment for the desired build config, e.g. '' | ||
+ | - Add the development package folder and the PHP folder to the '' | ||
+ | - Enter the source folder of the PECL extension | ||
+ | - Run '' | ||
+ | - Run '' | ||
+ | * the most important option is the one which enables the extension to be built (e.g. '' | ||
+ | * another important options is '' | ||
+ | * if the extension depends on C libraries, you need to download these and put them either in the '' | ||
+ | * there may be further interesting configuration options, e.g. those which allows to configure details of the extension to be built | ||
+ | - Run '' | ||
+ | - Run '' | ||
+ | - After successful compilation, | ||
+ | - If the extension has a PHPT test suite, run '' | ||
+ | |||
+ | If you want to build your extension via Github Actions, consider to use https:// | ||
==== Release directories ==== | ==== Release directories ==== |
internals/windows/stepbystepbuild_sdk_2.1612769078.txt.gz · Last modified: 2021/02/08 07:24 by kalle