2012-06-21 10 views
12

yo estaba tratando de construir PHP 5.2.17 desde las fuentes en Ubuntu 12.4 64bit utilizando esta configuración:No se puede encontrar libmysqlclient en/usr. mientras que compilar PHP 5.2 desde el código fuente en Ubuntu 12.4

./configure --prefix=/opt/php5.2 --with-config-file-path=/opt/php5.2 --with-mysql 

pero me siguen dando este error:

configure: error: Cannot find libmysqlclient under /usr. 
Note that the MySQL client library is not bundled anymore! 

alguna idea de cómo resolver esto?

EDIT1: Minimicé el comando de configuración por lo que solo se enfoca en mysql. también estoy ejecutando una versión de 64 bits de ubuntu.

Edit2: tratado de ejecutar ldconfig -v |grep mysql y aquí está la salida

# ldconfig -v |grep mysql 
/sbin/ldconfig.real: Path `/lib/x86_64-linux-gnu' given more than once 
/sbin/ldconfig.real: Path `/usr/lib/x86_64-linux-gnu' given more than once 
/sbin/ldconfig.real: Cannot stat /usr/lib/x86_64-linux-gnu/libnss_db.so: No such file or directory 
libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0 
libmysqlpp.so.3 -> libmysqlpp.so.3.1.0 
+1

I * supongo * que necesita indicarle a la configuración dónde está el directorio. - Parece que esto no es una pregunta, sino una solicitud de Google: [php configure: no se puede encontrar libmysqlclient] (http://www.linuxquestions.org/questions/linux-server-73/php-configure-cannot-find-libmysqlclient- 582944 /) (búsqueda: PHP configure la ruta libmysqlclient). – hakre

+0

¿Tiene alguna idea de dónde se encuentra? He intentado encontrarlo y aquí está el resultado: './usr/share/doc/libmysqlclient-dev ./usr/share/doc/libmysqlclient18 ./usr/lib/x86_64-linux-gnu/libmysqlclient.so ./usr/lib/x86_64-linux-gnu/libmysqlclient.a ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18 ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.so .18.0.0 ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.so ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.a ./usr/lib/x86_64-linux-gnu/libmysqlclient .so.18.0.0 ./usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 ... – farzam

+0

@hakre Editaré la pregunta y agregaré información adicional. – farzam

Respuesta

17

Gracias @hakre por la asistencia. aquí es el comando He utilizado y funciona:

sudo ./configure --prefix=/opt/php5.2 --with-config-file-path=/opt/php5.2 --with-mysql --with-libdir=/lib/x86_64-linux-gnu 
+0

¿Cómo se enteró de que debe ser '--with-libdir =/lib/x86_64-linux-gnu'? Me refiero al camino exacto. Solo veo la ruta dentro de los mensajes de error de '# ldconfig -v | grep mysql' salida, pero tiene otras rutas, también. – hakre

+0

Sabía que debería usar '--with-libdir' param y simplemente intenté esa ruta. – farzam

+3

@hakre use 'locate libmysqlclient' para averiguar dónde están sus archivos y luego especifique la ubicación exacta. –

4

Tal vez por alguna pobre alma que esto funcionará:

./configure --with-apxs2 =/usr/sbin/apxs --with- mysql = mysqlnd --with-mysqli = mysqlnd --with-pdo-mysql = mysqlnd

+0

Salvaste a mi pobre alma :) –

+0

¡Gracias! Funcionó para mí también. Estaba atascado con la compilación de php 5.3.29 para el uso de phpfarm. Está utilizando múltiples motores php en apache al mismo tiempo. Algunas instrucciones aquí: https://gist.github.com/gmodarelli/5887778 – liberborn

+0

Awesome !! PHP v 5.3.27 en Ubuntu14, tuve que modificarlo un poco: ./configure --with-apxs2 =/usr/local/apache/bin/apxs --with-mysql = mysqlnd --with-mysqli = mysqlnd --with-pdo-mysql = mysqlnd –

Cuestiones relacionadas