2012-06-21 26 views
12

Tôi đã cố gắng xây dựng PHP 5.2.17 từ nguồn trên Ubuntu 12.4 64bit sử dụng cấu hình này:Không thể tìm thấy libmysqlclient trong/usr. trong khi xây dựng PHP 5.2 từ nguồn trên Ubuntu 12,4

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

nhưng tôi tiếp tục nhận được lỗi này:

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

Bất cứ ý tưởng làm thế nào để giải quyết vấn đề này?

EDIT1: Tôi đã thu nhỏ lệnh cấu hình để nó chỉ tập trung vào mysql. Tôi cũng đang chạy phiên bản 64bit của ubuntu.

EDIT2: cố gắng chạy ldconfig -v |grep mysql và đây là sản phẩm

# 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

Tôi đoán * bạn cần phải biết cấu hình thư mục của nó ở đâu. - Có vẻ như đây không phải là câu hỏi mà là yêu cầu của Google: [php configure: không thể tìm thấy libmysqlclient] (http://www.linuxquestions.org/questions/linux-server-73/php-configure-cannot-find-libmysqlclient- 582944 /) (tìm kiếm: PHP cấu hình đường dẫn libmysqlclient). – hakre

+0

Bạn có biết nó nằm ở đâu không? Tôi đã thử tìm kiếm và đây là kết quả: './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 Tôi sẽ chỉnh sửa câu hỏi và sẽ thêm thông tin bổ sung. – farzam

Trả lời

17

Thanx @hakre cho sự hỗ trợ. đây là lệnh tôi đã sử dụng và nó hoạt động:

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

Làm thế nào bạn phát hiện ra rằng nó phải là '--with-libdir =/lib/x86_64-linux-gnu'? Ý tôi là con đường chính xác. Tôi chỉ thấy đường dẫn bên trong các thông báo lỗi của '# ldconfig -v | đầu ra grep mysql', nhưng nó cũng có các đường dẫn khác. – hakre

+0

Tôi biết rằng tôi nên sử dụng tham số '--with-libdir' và chỉ cần thử đường dẫn đó. – farzam

+3

@hakre sử dụng 'định vị libmysqlclient' để tìm xem tệp của bạn ở đâu và sau đó chỉ định vị trí chính xác. –

4

Có lẽ đối với một số linh hồn tội nghiệp này sẽ làm việc:

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

+0

Bạn đã cứu linh hồn tội nghiệp của mình :) –

+0

Cảm ơn! Nó cũng làm việc cho tôi. Đã bị mắc kẹt với việc biên dịch php 5.3.29 để sử dụng phpfarm. Nó sử dụng nhiều công cụ php tại apache cùng một lúc. Một số hướng dẫn tại đây: https://gist.github.com/gmodarelli/5887778 – liberborn

+0

Tuyệt vời !! PHP v 5.3.27 trên Ubuntu14, tôi phải sửa đổi nó một chút: ./configure --with-apxs2 =/usr/local/apache/bin/apxs - với-mysql = mysqlnd --with-mysqli = mysqlnd --with-pdo-mysql = mysqlnd –

Các vấn đề liên quan