Блог

php_pgsql.dll - Указанный модуль не найден

26 Марта 2009, 21:26

Сегодня наткнулся на достаточно неприятную ошибку при загрузке модуля PostgreSQL в PHP. Модуль не подцеплялся, а в логах оседало примерно вот что:

Unable to load dynamic library 'c:/php/ext/php_curl.dll' - Specified module could not be found in Unknown on line 0, или же «\xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc» (Указанный модуль не найден) в русской версии винды.

Сначала я думал, что дело может быть в libpq.dll, но оказалось, что всё намного проще.

Как обычно, гады, которые писали систему, не удосужились сделать сообщения об ошибках «с человеческим лицом», поэтому чтобы понять, чего же от нас хочет несчастный интерпретатор, нужно искать зависимости в библиотеках (можно использовать программу «depends.exe»).

Так вот: в случае дома оказалось, что он не видел всего двух DLLек: php5ts и libpq. Вариант решения — просто скопировать их в system32 (libpq.dll, php5ts.dll, libeay32.dll, ssleay.dll). Если чего-то не хватает, поискать локально и в случае обнаружения скопировать в system32. Если нет, искать в сети.

Другой способ — добавить путь к PHP в path. И у того, и у другого способа есть свои плюсы и минусы.

Добавить комментарий

Комментарии

28.12.2009, 13:57, Сашок.
Спасибо, помогло.