Freeswitch ESL PHP php7.2 - php, freeswitch, php-7.2 के साथ काम नहीं करता है

जब मैं php 5 (या 5.6) के साथ phpmod संकलित करता हूं सब कुछ ठीक काम करता है। लेकिन जब मैं php7.2 स्थापित करता हूं तो php ESL अब और काम नहीं करता है।

यह पता चला कि ESL.php में रनटाइम पर गतिशील रूप से लोड लोड करने के लिए dl () का उपयोग कर रहा है। हालांकि, डीएल () विकल्प php के बाद के verisons में हटा दिया गया था।

यहां का उत्पादन है

# ./single_command.php status

PHP Warning: dl(): Dynamically loaded extensions aren"t enabled in
/usr/src/freeswitch/libs/esl/php/ESL.php on line 24
Command to run is: status
PHP Fatal error: Uncaught Error: Call to undefined function
new_ESLconnection() in /usr/src/freeswitch/libs/esl/php/ESL.php:157
Stack trace:
#0 /usr/src/freeswitch/libs/esl/php/single_command.php(9):
ESLconnection->__construct("127.0.0.1", "8021", "ClueCon")
#1 {main}
thrown in /usr/src/freeswitch/libs/esl/php/ESL.php on line 157

मैंने php.ini में ESL.so एक्सटेंशन लोड करने का प्रयास किया लेकिन यह या तो काम नहीं करता है।

आउटपुट यहां है:

# php -dextension=/usr/lib/php/20160303/ESL.so

PHP Warning: PHP Startup: ESL: Unable to initialize module
Module compiled with module API=20131226
PHP compiled with module API=20170718
These options need to match
in Unknown on line 0

ईएसएल PHP php7.2 के साथ काम करने के लिए कोई विचार है?

मुझे php> 7.1.3 (वेब ​​फ्रेमवर्क आवश्यकता) का उपयोग करने की आवश्यकता है

पीएस: मैंने जिरा पर टिकट खोला लेकिन मुझे अभी तक कुछ भी नहीं मिला।

https://freeswitch.org/jira/browse/ESL-132

उत्तर:

उत्तर № 1 के लिए 1

आपको ESL.so संकलित करने की आवश्यकता है बाद एपीआई संकलन विसंगति त्रुटि से बचने के लिए PHP 7.2 विकास सेटअप स्थापित किया है, और आपके में ESL.so एक्सटेंशन लोड करें php.ini के तहत फ़ाइल [PHP] एक का उपयोग कर अनुभाग extension= बयान।

यहां एक उदाहरण के रूप में मेरे पास है:

[PHP]
...
extension=/usr/local/src/freeswitch-git/libs/esl/php/ESL.so
...

/usr/local/src/freeswitch-git/ फ्रीस्विच की स्रोत निर्देशिका है, और ESL.so के साथ संकलित किया गया है make phpmod में /usr/local/src/freeswitch-git/libs/esl

रास्ते में कुछ उपयोगी आदेश:

# list the compiled extensions/modules (ESL would be listed here on success)
php -m
# detailed PHP configuration
php -i
# get the API option in the compiled ESL module (adapt to your case)
strings /usr/local/src/freeswitch-git/libs/esl/php/ESL.so | grep API

उम्मीद है की यह मदद करेगा!


संबंधित सवाल
सबसे लोकप्रिय