Archived

This forum has been archived. Please start a new discussion on GitHub.

PHP Can't load extension php_ice.dll

I'd like to try ice on PHP (and C++)

I'm using wampserver (wampserver.com), so, it's PHP 5.12

When starting Apache/PHP can never load the php_ice.dll :
Warning : PHP Startup: Unable to load dynamic library ... php_ice.dll

1) It's in the right folder
2) it's added in php.ini


Should I copy some dll in windows/system32 ? (I already copied slice.dll, ice30.dll, icegrid30.Dll, iceutil30.DLL and thier d versions)

Thanks a lot !

Comments

  • AdrianM wrote:
    Should I copy some dll in windows/system32 ? (I already copied slice.dll, ice30.dll, icegrid30.Dll, iceutil30.DLL and thier d versions)

    Yes, you should do this. You also need to add slice30.dll afaik
  • mes
    mes California
    Hi,

    A few comments:
    • IcePHP does not use the IceGrid DLL.
    • The php_ice.dll that is included in the Ice binary installer is compiled in Release mode, so it does not need to use the debug versions of the DLLs (ice30d.dll, etc.).
    • In addition to ice30.dll, iceutil30.dll, and slice30.dll, IcePHP also requires icecpp.exe, bzip2.dll, msvcp71.dll, and msvcr71.dll. These dependencies are listed in the README.txt file included in the binary installer.
    • Have you checked the Windows event log, and the Apache logs, for any error messages that might indicate why the Ice extension could not be loaded?
    Take care,
    - Mark
  • mes wrote:
    Have you checked the Windows event log, and the Apache logs, for any error messages that might indicate why the Ice extension could not be loaded?

    Nothing in the Windows event log, nothing better in the apache error log.

    The specific error is "the specified module could not be found". (I believe : I'm using a non-english windows)

    Thanks for your help.
  • Using a dependency scanner on php_ice.dll, it found that the php5ts.dll was not available.
    So, I copied it from my installed php folder to system32. (version 5.1.1.1) It did not work better.
    Then, Dependency Walker found one anomaly :
    Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
    and displayed that _zval_dtor was not found in php5ts.dll

    I'm not sure it's significant.
  • mes
    mes California
    If you are using php_ice.dll from our binary installer, you should be aware that it was built against PHP 5.0.5. If you want to use a later release of PHP, you'll need to compile IcePHP from source code yourself.

    Take care,
    - Mark
  • matthew
    matthew NL, Canada
    One quick comment: IMO, copying DLLs to system32 is asking for troubles in the long term.