我正在使用mysql扩展mysqli编译PHP 5.2版
下面是步骤
Sudo./配置--with-mysqli=/opt/mysql/server-5.1/bin/mysql_config
mysql的版本是5.1,我也尝试过最新的版本
制作
在使波纹错误之后,我得到了
-lmysqlclient -lz -lcrypt -lnsl -lm -lxml2 -lcrypt -lxml2 -lcrypt -o sapi/cgi/php-cgi ext/mysqli/mysqli_repl.o: In function zif_mysqli_disable_rpl_parse': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:59: undefined reference to
mysql_disable_rpl_parse‘ext/mysqli/mysqli_repl.o: In function zif_mysqli_enable_rpl_parse': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:93: undefined reference to
mysql_enable_rpl_parse‘ext/mysqli/mysqli_repl.o:在函数zif_mysqli_master_query': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:111: undefined reference to
mysql_master_query’ext/mysqli/mysqli_repl.o:在函数zif_mysqli_rpl_parse_enabled': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:130: undefined reference to
mysql_rpl_parse_enabled‘ext/mysqli/mysqli_repl.o:在函数zif_mysqli_rpl_probe': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:147: undefined reference to
mysql_rpl_probe’ext/mysqli/mysqli_repl.o:在函数zif_mysqli_rpl_query_type': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:168: undefined reference to
mysql_rpl_query_type‘ext/mysqli/mysqli_repl.o:在函数zif_mysqli_slave_query': /usr/local/src/php5-build/php-5.2.5/ext/mysqli/mysqli_repl.c:207: undefined reference to
mysql_slave_query’collect2: ld返回1退出状态make:* sapi/cgi/php-cgi错误1
请让我知道解决方案
发布于 2013-12-02 18:00:49
我已经运行了这个命令
Sudo./configure --disable-all --with-mysql=/opt/mysql/server-5.1/ --with-mysqli=/opt/mysql/server-5.1/bin/mysql_config
在我之前的命令中它是有效的,我缺少/opt/mysql/server-5.1/
发布于 2013-11-30 09:57:58
我的猜测是,您包含的头文件来自错误版本的MySQL客户端。您尝试与PHP5.2一起构建的php-mysql扩展已有5+年的历史,并且将需要来自适当MySQL版本的库和头文件。只需执行类似'apt-get install mysql-client mysql-client-dev‘的命令就可以安装最新的版本,因此您可能需要下载一个较旧的版本并自己构建它,然后告诉./configure在哪里可以找到mysql头文件(例如./configure -with-mysqli=/path/ to /old/ headers )
编辑:请注意,配置标志非常重要,否则您仍然会包含错误的标头(基于您的系统包含路径)
发布于 2018-07-20 02:21:11
删除默认的mysqlclient-dev:
sudo apt-get remove libmysqlclient-dev
安装libmysqlclient-dev_5.6.25
sudo wget http://launchpadlibrarian.net/212189147/libmysqlclient-dev_5.6.25-0ubuntu1_amd64.deb
sudo dpkg -i libmysqlclient-dev_5.6.25-0ubuntu1_amd64.deb
wget http://launchpadlibrarian.net/212189159/libmysqlclient18_5.6.25-0ubuntu1_amd64.deb
sudo dpkg -i libmysqlclient18_5.6.25-0ubuntu1_amd64.deb
我很好!
https://stackoverflow.com/questions/20266246
复制相似问题