php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #66130 configure script searches for lib<mysqlibname>.*
Submitted: 2013-11-20 22:14 UTC Modified: 2013-11-20 23:57 UTC
From: mail at markus-ullmann dot de Assigned: mysql (profile)
Status: Wont fix Package: MySQL related
PHP Version: 5.4.22 OS: Linux
Private report: No CVE-ID: None
View Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
If you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: mail at markus-ullmann dot de
New email:
PHP Version: OS:

 

 [2013-11-20 22:14 UTC] mail at markus-ullmann dot de
Description:
------------
In configure script for 5.4.22 starting on line 61786, the script searches for a libmysqlclient. It searches for libmysqlclient.* in common library folders such as /usr, /usr/lib64 and so on.

For an application I need, I have a libmysqlclient.so.15 in that directory as the application is linked against this version. There is NO libmysqlclient.so though, so linking against it with "-lmysqlclient" does not work.

My MySQL installation lives in /usr/lib64/mysql though which mysql_config reports just fine and even the configure script finds correctly when I move the library out of the way.

Actual result:
--------------
It should only search for either a libmysqlclient.so (or a libmysqlclient.dylib depending on your environment) as only those fulfill the linker requirement when -lmysqlclient is specified.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2013-11-20 22:50 UTC] aharvey@php.net
-Package: Compile Failure +Package: MySQL related -Assigned To: +Assigned To: mysql
 [2013-11-20 23:57 UTC] johannes@php.net
-Status: Assigned +Status: Wont fix
 [2013-11-20 23:57 UTC] johannes@php.net
This probably is the ext/mysql configuration. Both mysqli and pdo_mysql can use mysql_config. For legacy reasons ext/mysql doesn't. ext/mysql is deprecated and not suggested to use and we don't plan to open the can of worms of the build system there.

But there is a solution: We include mysqlnd as a PHP-specific replacement for libmysql, simply compiling --with-mysql --with-mysqli --with-pdo-mysql without extra path in 5.4 or newer should use mysqlnd instead of looking for libmysql. This can also be forced by using =mysqlnd as "path" to the three options
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 05:01:30 2024 UTC