Предупреждение PHP: Запуск PHP: Невозможно загрузить динамическую библиотеку

Предупреждение PHP: Запуск PHP: Невозможно загрузить динамическую библиотеку

Я видел довольно много сообщений здесь об этой проблеме, но пока не понял, что не так с моей настройкой. Вот что я получаю, когда пытаюсь запустить что-либо с PHP:

Sat Sep 02 - 12:11 PM > php -version
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/tidy.dll' - No such file or directory in Unknown on line 0
PHP 7.0.19 (cli) (built: May 14 2017 03:08:04) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies

tidy.dllВ этом iniфайле есть ссылка

Sat Sep 02 - 12:11 PM > cat /etc/php.d/tidy.ini
extension = tidy.dll

Вот мое extension_dirопределение:

Sat Sep 02 - 12:12 PM > php -i | grep extension_dir
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/tidy.dll' - No such file or directory in Unknown on line 0
extension_dir => /usr/lib/php/20151012 => /usr/lib/php/20151012

Разрешения в этом каталоге, похоже, в порядке.

Sat Sep 02 - 12:12 PM > ls -la /usr/lib/php/20151012
total 2228
drwxr-xr-x+ 1 RobertMarkBram None      0 Aug 31 21:20 .
drwxr-xr-x+ 1 RobertMarkBram None      0 Apr 13 15:25 ..
-rwxr-xr-x  1 RobertMarkBram None  15389 May 14 18:27 ctype.dll
-rwxr-xr-x  1 RobertMarkBram None  81949 May 14 18:27 curl.dll
-rwxr-xr-x  1 RobertMarkBram None  76829 May 14 18:27 gd.dll
-rwxr-xr-x  1 RobertMarkBram None 956957 May 14 18:27 imap.dll
-rwxr-xr-x  1 RobertMarkBram None 426013 May 14 18:27 intl.dll
-rwxr-xr-x  1 RobertMarkBram None  36381 May 14 18:27 json.dll
-rwxr-xr-x  1 RobertMarkBram None  35357 May 14 18:27 mcrypt.dll
-rwxr-xr-x  1 RobertMarkBram None 110621 May 14 18:27 mysqli.dll
-rwxr-xr-x  1 RobertMarkBram None  27165 May 14 18:27 pdo_mysql.dll
-rwxr-xr-x  1 RobertMarkBram None 271389 May 14 18:27 phar.dll
-rwxr-xr-x  1 RobertMarkBram None  19485 May 14 18:27 pspell.dll
-rwxr-xr-x  1 RobertMarkBram None  10781 May 14 18:27 recode.dll
-rwxr-xr-x  1 RobertMarkBram None  43549 May 14 18:27 tidy.dll
-rwxr-xr-x  1 RobertMarkBram None  21021 May 14 18:27 tokenizer.dll
-rwxr-xr-x  1 RobertMarkBram None  81949 May 14 18:27 xmlrpc.dll
-rwxr-xr-x  1 RobertMarkBram None  27677 May 14 18:27 xsl.dll

А если посмотреть на списки контроля доступа tidy.dll, то я не вижу проблемы.

Sat Sep 02 - 12:13 PM > getfacl /usr/lib/php/20151012/tidy.dll
# file: /usr/lib/php/20151012/tidy.dll
# owner: RobertMarkBram
# group: None
user::rwx
group::r-x
other:r-x

решение1

0x0f4d0000 — очень низкий адрес, и tidy.dll конфликтует с другими ресурсами или с самой программой при загрузке по этому адресу; поэтому его не удалось загрузить.

Поскольку у вас 32-битная установка: у вас установлено слишком много программ, и они исчерпали доступное адресное пространство.
Распределение адреса dll начинается с 0x6fff.... и снижается, поэтому вы израсходовали его весь.

Вы можете посмотреть /proc/self/mapsили , /proc/<pid>/mapsчтобы увидеть, как распределяется адресное пространство.

Возможные решения:
1. Сократите количество установленных программ и удалите все, что вам не нужно. После этого вам нужно запустить полную перебазировку, см.https://cygwin.com/faq.html#faq.using.fixing-fork-failures
или 2 перейти на 64-битную установку

Cygwin предлагает более 8000 пакетов, но вряд ли вам понадобится больше 2000.

Недавнее обсуждение того же вопроса в списке рассылки Cygwin
https://cygwin.com/ml/cygwin/2017-08/msg00265.html

Связанный контент