PHP Startup: Unable to load dynamic library

PHP Startup: Unable to load dynamic library

am 08.10.2007 14:31:44 von Tamas Szalai

Hallo!

Ich habe mir die letzte PHP-Version mit folgender Anweisung kompiliert:

--->8---
../configure --with-apxs2=/usr/local/apache2/bin/apxs
--with-freetype-dir=/usr/lib --with-jpeg-dir=/usr/local
--with-png-dir=/usr/local --enable-shared --with-zlib --enable-mbstring
--with-gd --with-mysql --with-mcrypt=/usr/local/lib
--prefix=/usr/local/php5
---8<---

Nun habe ich mir noch die Module syck, xcache, dbg mittels phpize,
../configure, make & make install kompiliert und installiert. Diese liegen
im Ordner
"/usr/local/php5/lib/php/extensions/no-debug-non-zts-2006061 3", welchen
ich in der php.ini zum include_path hinzugefügt habe. Ausserdem habe ich
in der php.ini die notwendigen Anweisungen zum Laden der Module eingefügt:

--->8---
include_path =
".:/usr/local/php5/lib/php:/usr/local/php5/lib/php/extension s/no-debug-non-zts-20060613"
....
extension=syck.so
extension=dbg.so
....
zend_extension =
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613 /xcache.so
---8<---

Wenn ich mit dieser Konfiguration den Apache neustarte, erscheinen die
Module syck & dbg in der phpinfo nur sporadisch(?). Sie sind also manchmal
da und manchmal nicht.

Mittels php -v kommt folgende Meldung:

--->8---
php -v
PHP Warning: PHP Startup: Unable to load dynamic library './syck.so' -
../syck.so: cannot open shared object file: No such file or directory in
Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic
library './dbg.so' - ./dbg.so: cannot open shared object file: No such
file or directory in Unknown on line 0 PHP 5.2.4 (cli) (built: Oct 4 2007
11:12:50) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0,
Copyright (c) 1998-2007 Zend Technologies
with XCache v1.2.1, Copyright (c) 2005-2007, by mOo
---8<---

Habe ich etwas nicht beachtet, bzw. hat jemand einen Lösungsansatz oder
Tipp parat? Kann es evtl. sein, dass wegen dem XCache diese Module nicht
funktionieren?


TIA

Re: PHP Startup: Unable to load dynamic library

am 08.10.2007 15:36:06 von Carsten Wiedmann

Tamas Szalai schrieb:

> include_path =
> ".:/usr/local/php5/lib/php:/usr/local/php5/lib/php/extension s/no-debug-non
> -zts-20060613" ...
> extension=syck.so
> extension=dbg.so

Für Extensions ist das "extension_dir" [1] zuständig, und nicht der
"include_path".

Gruß
Carsten

[1] http://www.php.net/manual/en/ini.core.php#ini.extension-dir

Re: PHP Startup: Unable to load dynamic library

am 08.10.2007 16:22:58 von Joerg Behrens

Tamas Szalai schrieb:
> Hallo!
>=20
> Ich habe mir die letzte PHP-Version mit folgender Anweisung kompiliert:=

>=20
> --->8---
> ./configure --with-apxs2=3D/usr/local/apache2/bin/apxs
> --with-freetype-dir=3D/usr/lib --with-jpeg-dir=3D/usr/local

Das '/lib' bei --with-freetype-dir=3D/usr/lib ist zuviel.

> --with-png-dir=3D/usr/local --enable-shared --with-zlib --enable-mbstri=
ng
> --with-gd --with-mysql --with-mcrypt=3D/usr/local/lib

Gleiche fuer dein --with-crypt

> --prefix=3D/usr/local/php5
> ---8<---
>=20
> Nun habe ich mir noch die Module syck, xcache, dbg mittels phpize,
> ./configure, make & make install kompiliert und installiert. Diese lieg=
en
> im Ordner
> "/usr/local/php5/lib/php/extensions/no-debug-non-zts-2006061 3", welchen=

> ich in der php.ini zum include_path hinzugefügt habe. Ausserdem ha=
be ich
> in der php.ini die notwendigen Anweisungen zum Laden der Module eingef=C3=
=BCgt:
>=20
> --->8---
> include_path =3D
> ".:/usr/local/php5/lib/php:/usr/local/php5/lib/php/extension s/no-debug-=
non-zts-20060613"

Entferne "/usr/local/php5/lib/php/extensions/no-debug-non-zts-2006061 3"=20
aus dem include_path. Diese Angabe muss als=20
"extension_dir=3D/usr/local/php5/lib/php/extensions/no-debug -non-zts-2006=
0613"=20
gesetzt werden.

>=20
> Wenn ich mit dieser Konfiguration den Apache neustarte, erscheinen die
> Module syck & dbg in der phpinfo nur sporadisch(?). Sie sind also manch=
mal
> da und manchmal nicht.

Browsercache an?

> Mittels php -v kommt folgende Meldung:
>=20
> --->8---
> php -v
> PHP Warning: PHP Startup: Unable to load dynamic library './syck.so' -=

> ./syck.so: cannot open shared object file: No such file or directory in=

> Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic

Ein CLI PHP kann eine ganz eigene php.ini haben als dein mod_php im=20
Webserver. Haengt stark von der Distribution ab.

> library './dbg.so' - ./dbg.so: cannot open shared object file: No such

"./dbg.so" hoert sich an als das er die Datei im akt. Verzeichnis sucht =

und nicht im extension_dir.

> file or directory in Unknown on line 0 PHP 5.2.4 (cli) (built: Oct 4 2=
007
> 11:12:50) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0,
> Copyright (c) 1998-2007 Zend Technologies
> with XCache v1.2.1, Copyright (c) 2005-2007, by mOo
> ---8<---
>=20
> Habe ich etwas nicht beachtet, bzw. hat jemand einen Lösungsansatz=
oder
> Tipp parat? Kann es evtl. sein, dass wegen dem XCache diese Module nich=
t
> funktionieren?

Ja das kann daran liegen aber imho scheitert es bei dir an falschen Pfade=
n.

Gruss
Joerg

--=20
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de

Re: PHP Startup: Unable to load dynamic library

am 09.11.2007 22:37:08 von Krzysztof Piwowar

You need only put libmysql.dll (from new php 5.2.4) to c:\windows and
it will work. I've just did it :)

Re: PHP Startup: Unable to load dynamic library

am 10.11.2007 12:29:18 von Joerg Behrens

Krzysztof Piwowar schrieb:
> You need only put libmysql.dll (from new php 5.2.4) to c:\windows and
> it will work. I've just did it :)
>
The OP doesnt use the Windows operating system so i cant see how your=20
answer can helps here. He also doesnt have probems with mysql.

regards
Joerg


--=20
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de