internals:windows:stepbystepbuild_sdk_2
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
internals:windows:stepbystepbuild_sdk_2 [2019/06/06 11:14] – Explain vc->vs naming change cmb | internals:windows:stepbystepbuild_sdk_2 [2021/08/06 15:23] – note about updating VS; see https://bugs.php.net/81337 cmb | ||
---|---|---|---|
Line 17: | Line 17: | ||
* 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** or **PHP 7.3**. | + | * 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 **PHP 7.4**. | + | * Visual C++ 16.0 (Visual Studio 2019) for **master**. |
- | In filenames (and the '' | + | 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. | ||
+ | |||
+ | In filenames (and the '' | ||
==== Setup ==== | ==== Setup ==== | ||
Line 31: | Line 35: | ||
* If compiling **PHP 7.2+**: | * If compiling **PHP 7.2+**: | ||
* Install Visual Studio 2017 | * Install Visual Studio 2017 | ||
- | * If compiling **PHP 7.4+**: | + | * If compiling **master**: |
* Install Visual Studio 2019 | * Install Visual Studio 2019 | ||
Line 133: | Line 137: | ||
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. | ||
+ | |||
+ | ==== Release directories ==== | ||
+ | |||
+ | When you have successfully compiled PHP, the release directory can be one of multiple, depending on the build configuration: | ||
+ | |||
+ | - `Release`: Release NTS build | ||
+ | - `Release_TS`: | ||
+ | - `Debug`: Debug NTS build | ||
+ | - `Debug_TS`: Debug ZTS build | ||
+ | |||
+ | If you are compiling using a 64-bit compiler, then these directories will be located in a directory called `x64`. | ||
===== Pitfalls ===== | ===== Pitfalls ===== | ||
Line 138: | Line 153: | ||
- For possible PHP SDK issues, please consult the PHP SDK readme | - For possible PHP SDK issues, please consult the PHP SDK readme | ||
- As of PHP 7.3 the switch --enable-native-intrinsics is available. The resulting binary will then require a processor with the corresponding feature set available. For example, if you set --enable-native-intrinsics=avx2, | - As of PHP 7.3 the switch --enable-native-intrinsics is available. The resulting binary will then require a processor with the corresponding feature set available. For example, if you set --enable-native-intrinsics=avx2, | ||
+ | - In some circumstances, | ||
internals/windows/stepbystepbuild_sdk_2.txt · Last modified: 2022/01/10 09:43 by cmb