Задать вопрос
@glebvvs

Как скомпилить расширение php-libev для PHP?

Решил познакомиться с библиотекой reactPHP.

Для установки нашел следующую инструкцию:
ihighload.ru/ustanovka-reactphp-v-ubuntu

проблема в том, что позникает ошибка рецепта в Makefile. Не имею даже малейшего представления в чем конкретно проблема. Исходя из некоторого времени гугления предполагаю, что чего-то не хватает для компиляции расширения php-libev, но чего конкретно я совершенно не понимаю.

/var/www/php-libev/libev.c:509:31: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
  idle_event_ce->create_object = ev_idle_create;
                               ^
/var/www/php-libev/libev.c:513:19: error: too many arguments to function ‘zend_register_internal_class_ex’
  async_event_ce = zend_register_internal_class_ex(&ce, event_ce, NULL TSRMLS_CC);
                   ^
In file included from /usr/include/php/20180731/main/php.h:38:0,
                 from /var/www/php-libev/php_libev.h:38,
                 from /var/www/php-libev/libev.c:34:
/usr/include/php/20180731/Zend/zend_API.h:285:28: note: declared here
 ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce);
                            ^
/var/www/php-libev/libev.c:514:32: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
  async_event_ce->create_object = ev_async_create;
                                ^
/var/www/php-libev/libev.c:518:21: error: too many arguments to function ‘zend_register_internal_class_ex’
  cleanup_event_ce = zend_register_internal_class_ex(&ce, event_ce, NULL TSRMLS_CC);
                     ^
In file included from /usr/include/php/20180731/main/php.h:38:0,
                 from /var/www/php-libev/php_libev.h:38,
                 from /var/www/php-libev/libev.c:34:
/usr/include/php/20180731/Zend/zend_API.h:285:28: note: declared here
 ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce);
                            ^
/var/www/php-libev/libev.c:519:34: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
  cleanup_event_ce->create_object = ev_cleanup_create;
                                  ^
/var/www/php-libev/libev.c:527:31: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
  event_loop_ce->create_object = event_loop_object_create;
                               ^
/var/www/php-libev/libev.c: In function ‘zm_info_libev’:
/var/www/php-libev/libev.c:562:2: warning: implicit declaration of function ‘php_info_print_table_start’ [-Wimplicit-function-declaration]
  php_info_print_table_start();
  ^
/var/www/php-libev/libev.c:563:2: warning: implicit declaration of function ‘php_info_print_table_row’ [-Wimplicit-function-declaration]
  php_info_print_table_row(2, "Extension version", PHP_LIBEV_EXTVER);
  ^
/var/www/php-libev/libev.c:568:2: warning: implicit declaration of function ‘php_info_print_table_end’ [-Wimplicit-function-declaration]
  php_info_print_table_end();
  ^
Makefile:194: ошибка выполнения рецепта для цели «libev.lo»
make: *** [libev.lo] Ошибка 1
gleb@c:/var/www/php-libev$ make install
  • Вопрос задан
  • 110 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы