Is it the custom extension building part compatible with newer version of PHP, 5.2.10 and 5.3.0?
How would be the procedures to gain compatibilty, to check what is wrong, what needs to be modified etc? How can we debug the custom extension building part?
Thanks!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The last version of PHP I checked was 5.2.1, so I can't say how it will work with more recent versions. You can check it by yourself by doing the following:
1. Download C sources of PHP
2. Find there value of `ZEND_MODULE_API_NO`
3. Check if the value is the same as in ZendTypes.pas
4. If the value is the same, extension will be compatible
5. If not, modify `ZEND_MODULE_API_NO` is ZendTypes.pas and try to compile test extension. If you can't run it more fixes needed
6. Check structure `zend_module_entry` and compare it with Tzend_module_entry in ZendTypes.pas Modify it if needed
7. Check `sapi_module_struct` and compare it with one from phptypes.pas. Make modifications, if needed
8. Check `zend_class_entry` and compare it with zendtypes.pas
Normally this is enough.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Serhiy, thank you very much!
The extensions built with current version work for PHP up to 5.2.9, with 5.2.10 give a "module not compiled in PHP". Will work on your checklist and will report here.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Checked again with 5.2.11, is working OK! ZEND_MODULE_API_NO still 20060613.
5.3.0 has ZEND_MODULE_API_NO 20090626 so I'll try to see what happens with this one.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Looks like there are a lot of changes in 5.3.0. I made only the modifications suggested above, the extension compiles OK however at load by php-cgi.exe it crashes with:
PHP 5.3.0 is very different from previous versions and has 2 different builds for Windows (VC6 and VC9). I am working now on new release of php4delphi with support of php up to 5.3.0 and Delphi up to Delphi 2010.
I think this release will be available very soon, within few next days.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
Is it the custom extension building part compatible with newer version of PHP, 5.2.10 and 5.3.0?
How would be the procedures to gain compatibilty, to check what is wrong, what needs to be modified etc? How can we debug the custom extension building part?
Thanks!
The last version of PHP I checked was 5.2.1, so I can't say how it will work with more recent versions. You can check it by yourself by doing the following:
1. Download C sources of PHP
2. Find there value of `ZEND_MODULE_API_NO`
3. Check if the value is the same as in ZendTypes.pas
4. If the value is the same, extension will be compatible
5. If not, modify `ZEND_MODULE_API_NO` is ZendTypes.pas and try to compile test extension. If you can't run it more fixes needed
6. Check structure `zend_module_entry` and compare it with Tzend_module_entry in ZendTypes.pas Modify it if needed
7. Check `sapi_module_struct` and compare it with one from phptypes.pas. Make modifications, if needed
8. Check `zend_class_entry` and compare it with zendtypes.pas
Normally this is enough.
Hi Serhiy, thank you very much!
The extensions built with current version work for PHP up to 5.2.9, with 5.2.10 give a "module not compiled in PHP". Will work on your checklist and will report here.
Checked again with 5.2.11, is working OK! ZEND_MODULE_API_NO still 20060613.
5.3.0 has ZEND_MODULE_API_NO 20090626 so I'll try to see what happens with this one.
Looks like there are a lot of changes in 5.3.0. I made only the modifications suggested above, the extension compiles OK however at load by php-cgi.exe it crashes with:
Error signature:
szAppName : php-cgi.exe szAppVer : 5.3.0.0 szModName : php5ts.dll
szModVer : 5.3.0.0 offset : 001b3407
So, other thoughts?
PHP 5.3.0 is very different from previous versions and has 2 different builds for Windows (VC6 and VC9). I am working now on new release of php4delphi with support of php up to 5.3.0 and Delphi up to Delphi 2010.
I think this release will be available very soon, within few next days.