Ich brauche eine Standalone-unabhängige-System-Bibliotheken-Version von PHP, um es als ZIP-Datei mit Binärdateien zu verteilen. Zuvor enthielt die .zip-Datei die ausführbaren Dateien libxml2.so.2, libpng12.so.0, php.ini und php. Kürzlich musste ich einige Funktionalitäten hinzufügen und das PHP neu kompilieren. Ich habe es mit:Wie kompiliere ich PHP, um es von Systembibliotheken unabhängig zu machen?
./configure \
--prefix=/home/user/php/out \
--libdir=. \
--enable-static=YES \
--enable-shared=NO \
--with-pdo_mysql \
--with-gd \
--with-mysql \
--enable-zip \
--enable-zend-multibyte \
--enable-cgi \
--enable-fastcgi \
--with-ldap=shared
make && make install
Dann nahm ich php aus aus/ist und libmysqlclient.so.16 von/usr/lib /. Aber der neue PHP möchte die Bibliothek nicht aufnehmen. Sobald ich es laufen lasse, bekomme ich folgende Fehlermeldung:
./php: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
libmysqlclient.so.16 und PHP im selben Verzeichnis befinden. Wenn ich libmysqlclient.so.16 nach/usr/lib setze, funktioniert php gut.
Gibt es eine zusätzliche Option, die ich beim Kompilieren vergessen habe? Warum ist nicht "--libdir =." Option funktioniert?
Es war gerade genug, um PHP mit 'LD_LIBRARY_PATH = \' pwd \ '/ php' zu beginnen -. Vielen Dank für Ihre Antwort. – ssobczak