php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #75818 Unable to load dll (not win32 valid app)
Submitted: 2018-01-15 10:11 UTC Modified: 2021-06-03 10:40 UTC
Votes:9
Avg. Score:3.9 ± 1.3
Reproduced:8 of 8 (100.0%)
Same Version:4 (50.0%)
Same OS:4 (50.0%)
From: jbnahan@php.net Assigned: cmb (profile)
Status: Closed Package: amqp (PECL)
PHP Version: 7.2.1 OS: Windows Server 2012 R2
Private report: No CVE-ID: None
 [2018-01-15 10:11 UTC] jbnahan@php.net
Description:
------------
When I wand load the ext, a message appear (see actual result).

PHP.ini :
extension_dir = "ext"
extension=amqp

Downloaded Version : 
http://windows.php.net/downloads/pecl/releases/amqp/1.9.3/php_amqp-1.9.3-7.2-nts-vc15-x64.zip


Expected result:
----------------
php -v

PHP 7.2.1 (cli) (built: Jan  4 2018 04:00:18) ( NTS MSVC15 (Visual C++ 2017) x64
 )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.2.1, Copyright (c) 1999-2017, by Zend Technologies

Actual result:
--------------
php -v

Warning: PHP Startup: Unable to load dynamic library 'amqp' (tried: ext\amqp (Th
e specified module could not be found.
), ext\php_amqp.dll (%1 is not a valid Win32 application.
)) in Unknown on line 0
PHP 7.2.1 (cli) (built: Jan  4 2018 04:00:18) ( NTS MSVC15 (Visual C++ 2017) x64
 )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.2.1, Copyright (c) 1999-2017, by Zend Technologies

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2018-01-18 09:44 UTC] ab@php.net
-Status: Open +Status: Verified
 [2018-01-18 09:44 UTC] ab@php.net
Thanks for the report. After the check, it appears that amqp unconditionally depends on the SSL features in librabbitmq. An older librabbitmq version was used for this build, which was linked with OpenSSL 1.0.2. However in PHP 7.2, OpenSSL 1.1.0 is used. We stuck here, until librabbitmq with support for OpenSSL 1.1.0 is released. I've removed these invalid packages for now.

Thanks.
 [2018-10-18 09:17 UTC] grossolini@php.net
Hi there

I don't know when this was fixed but it works now.
Apache/2.4.35 (Win64) OpenSSL/1.1.0i PHP/7.2.11 
API20170718,TS,VC15
 
Cheers,
 [2018-10-19 15:10 UTC] jbnahan@php.net
Read the librabbitmq.dll version.
If you have the version 0.9+, the library use the OpenSSL 1.1 bundled with PHP.

For read the version, open cmd windows and type :
c:\> php --ri amqp

amqp

Version => 1.9.3
Revision => release
Compiled => Oct 19 2017 @ 17:23:43
AMQP protocol version => 0-9-1
librabbitmq version => 0.10.0-pre
 [2021-06-02 13:13 UTC] cmb@php.net
-Status: Verified +Status: Feedback -Assigned To: +Assigned To: cmb
 [2021-06-02 13:13 UTC] cmb@php.net
Recent builds of amqp are supposed to use librabbitmq 0.9.0, which
is compiled against OpenSSL 1.1, so this issue should be resolved,
or does anyone still experience this?
 [2021-06-03 09:27 UTC] jbnahan@php.net
This issues is solved by the latest version of RabitMQ DLL.

You can close this bug.
 [2021-06-03 10:40 UTC] cmb@php.net
-Status: Feedback +Status: Closed
 [2021-06-03 10:40 UTC] cmb@php.net
Thanks for the swift reply!
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 26 17:01:30 2024 UTC