Edit report at https://bugs.php.net/bug.php?id=64397&edit=1
ID: 64397 Updated by: a...@php.net Reported by: mattfic...@php.net Summary: Enchant PHPTs fail with VC11 compiler Status: Feedback Type: Bug Package: Enchant related Operating System: Windows PHP Version: 5.5.0alpha5 Assigned To: ab Block user comment: N Private report: N New Comment: We have multiple issues here a) as I could see, there are more dlls it tries to load (both 5.4.13RC1 and 5.5.0alpha6) c:\snaps\php-5.4.13RC1-Win32-VC9-x86>php -n -d extension_dir=ext -d extension=php_enchant.dll ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icudt.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icuin.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icuio.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icule.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\iculx.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icutest.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icutu.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\icuuc.dll': %1 is not a valid Win32 application. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\php5apache2_2.dll': The specified module could not be found. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\php5apache2_2_filter.dll': The specified module could not be found. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\php5apache2_4.dll': The specified module could not be found. ** (php.exe:19280): WARNING **: Error loading plugin: `c:\snaps\php-5.4.13RC1-Win32-VC9-x86\php5nsapi.dll': The specified module could not be found. Looking at the libenchant.dll c:\snaps\php-5.4.13RC1-Win32-VC9-x86>dumpbin /imports libenchant.dll | find "dll" Dump of file libenchant.dll glib-2.dll gmodule-2.dll KERNEL32.dll ADVAPI32.dll MSVCR90.dll there are no ICU, and in any case very odd are all that apache dlls and nsapi. That looks like a build config issue with VC9. NSAPI is even disabled by default AFAIR. We wasn't upgrading neither glib nor enchant for VC9, for VC11 I've built glib with gettext, libffi and zlib, enchant with glib only as deps. b) Generally some of enchant tests need dict files and will fail otherwise. Also in the VC11 builds enchant was changed so that it looks for libenchant_ispell.dll and libenchant_myspell in the enchant subdir, not in php root dir anymore. And the dict files can be put into <php bin dir>\share\myspell\dicts or loaded with enchant_broker_set_dict_path() (that function is undocumented yet). These changes have to be met for VC11 builds. After doing that the ext loaded and the tests was passing for me. c) VC9 icu*.dll without 49 suffix seems to be broken. That however doesn't affect anything, the import libs point to those dll with 49 suffix (the intl ext for instance). This issue is unrelated to this ticket. Previous Comments: ------------------------------------------------------------------------ [2013-03-09 01:03:56] paj...@php.net it should not load these DLLs at all or not even try to. They are not enchant plugin. It looks like a config issue in the tests box or a patch is missing in enchant. @a did you add the patch or built enchant without it? ------------------------------------------------------------------------ [2013-03-08 23:42:52] mattfic...@php.net Description: ------------ These 3 PHPTs fail on 5.5.0a6 built with VC11 compiler: ext/enchant/tests/broker_describe.phpt ext/enchant/tests/broker_request_dict.phpt ext/enchant/tests/bug13181.phpt Enchant PHPTs also are marked fail on 5.5.0a6 built with VC9, but that is a different issue: on 5.5.0a6-VC9 these PHPTs output the expected text and output warnings about loading icu* DLLs. It is these extra warnings that cause the failure on VC9, for example: WARNING **: Error loading plugin: `c:\php-sdk\php-5.5.0alpha6-nts-Win32-VC9-x86\icudt.dll': %1 is not a valid Win32 application. These warnings are not printed by 5.5.0a6-VC11. When these PHPTs are run on 5.5.0a6-VC11, they output 'Failed' and don't output the expected text at all... so its a VC11 related issue. Expected result: ---------------- Test pass Actual result: -------------- Test fail ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=64397&edit=1