Edit report at http://bugs.php.net/bug.php?id=54644&edit=1
ID: 54644 Updated by: tony2...@php.net Reported by: public at grik dot net Summary: wrong pathes in php_pdo_mysql_int.h Status: Assigned Type: Bug Package: PDO related Operating System: unix PHP Version: 5.3.6 Assigned To: mysql Block user comment: N Private report: N New Comment: Andrey, whatever that header is, its contents is not used in PDO_MYSQL and the header itself is not installed, which means there's not way to build PDO_MYSQL+mysqlnd dynamically. Previous Comments: ------------------------------------------------------------------------ [2011-05-03 09:21:09] and...@php.net Tony, you are not exactly right. ext/mysql/mysql_mysqlnd.h is not a left-over. If you take a look into ext/mysqli you will find mysqli_mysqlnd.h, which is larger but follows the same schema - ext_driver (mysqli_libmysql.h exists). However, mysql_myslqnd.h is so small, that it could be incorporated into another file, if wanted. Best, Andrey ------------------------------------------------------------------------ [2011-05-03 06:56:38] tony2...@php.net I didn't commit the patch yet, I still want to hear from the MySQL guys first. Also it's their domain, not mine. ------------------------------------------------------------------------ [2011-05-02 22:32:28] public at grik dot net thanks! I am sorry for the wrong initial description, complaining at # include "ext/mysqlnd/mysqlnd.h" while the error clearly told about "ext/mysql/mysql_mysqlnd.h" ------------------------------------------------------------------------ [2011-05-02 21:20:36] tony2...@php.net There's also another issue: you can't install mysqlnd itself, you have to install one of the extensions using it. So in order to build shared version of PDO_MYSQL with myslnd you have to build ext/mysql with myslnd *statically*. I believe ext/mysqlND should be full-grown extension with its own --enable-mysqlnd option, this was you could build it separately AND still be able to use your automagic with $PHP_MYSQLND_ENABLED. ------------------------------------------------------------------------ [2011-05-02 21:12:41] tony2...@php.net The problem is quite weird. I guess this line: # include "ext/mysql/mysql_mysqlnd.h" ..is some kind of leftover from the good ol' times when mysqlnd was a part of ext/mysql/; at least nothing breaks if I remove it. So the patch is as easy as this: --- php_pdo_mysql_int.h (revision 307861) +++ php_pdo_mysql_int.h (working copy) @@ -25,7 +25,6 @@ #if defined(PDO_USE_MYSQLND) # include "ext/mysqlnd/mysqlnd.h" -# include "ext/mysql/mysql_mysqlnd.h" # include "ext/mysqlnd/mysqlnd_libmysql_compat.h" # define PDO_MYSQL_PARAM_BIND MYSQLND_PARAM_BIND #else ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/bug.php?id=54644 -- Edit this bug report at http://bugs.php.net/bug.php?id=54644&edit=1